AUTOSAR_SWS_DiagnosticLogAndTrace 中文翻译

文档编号:807 | 状态:Final | 发布于:AUTOSAR CP Release 4.4.0
所属标准:AUTOSAR Classic Platform | 文档责任方:AUTOSAR

本翻译覆盖原文档 1-100 页正文。原文为软件规范(SWS),定义 Diagnostic Log and Trace(DLT)模块的 API、配置、错误处理——诊断日志与跟踪。


1 引言与范围

DLT(Diagnostic Log and Trace)模块为应用程序与 BSW 模块提供统一的日志和跟踪接口。日志通过 Ethernet/SoAd 传输到外部 DLT 查看器(DLT Viewer)。R4.4 增强与 IPv6 集成。

2 缩略语

DLT / Log / Trace / DLT Viewer / Verbose / Debug / Info / Warn / Error / Fatal / Context / SoAd / PduR / Ethernet / IPv4 / IPv6 / LogChannel

3 相关文档

[1] AUTOSAR SWS SocketAdaptor
[2] AUTOSAR SWS TcpIp
[3] AUTOSAR RS Diagnostic Log and Trace

4 约束与假设

DLT 应:

5 依赖其他模块

DLT 依赖:SoAd(Socket Adapter)/ TcpIp / PduR(PDU 路由)/ Dem(错误上报)。

6 功能规格

6.1 架构

DLT 接收应用/BSW 日志调用后,将日志消息打包成 DLT 协议格式(头部 + 数据),通过 SoAd 发送到 DLT Viewer。

6.2 日志级别

DLT 日志级别(按严重性递增):

7 API 服务

7.1 初始化 / 关闭

void Dlt_Init(const Dlt_ConfigType* ConfigPtr):初始化。
void Dlt_DeInit(void):去初始化。

7.2 日志发送

Std_ReturnType Dlt_SendLogMessage(const Dlt_LogChannelIdType LogChannelId, const Dlt_MessageLogInfoType* LogInfo, const uint8* LogData, uint16 LogDataLength):发送日志消息。
Std_ReturnType Dlt_SendTraceMessage(const Dlt_LogChannelIdType LogChannelId, const Dlt_TraceMessageType* TraceInfo):发送跟踪消息。

7.3 注册 / 注销

Std_ReturnType Dlt_RegisterContext(Dlt_ApplicationIdType AppId, Dlt_ContextIdType ContextId, const uint8* ContextDescription, uint8 ContextDescriptionLength, Dlt_ContextHandleType* ContextHandlePtr):注册上下文。
Std_ReturnType Dlt_UnregisterContext(Dlt_ContextHandleType ContextHandle):注销上下文。

7.4 配置控制

Std_ReturnType Dlt_SetLogLevel(Dlt_ContextHandleType ContextHandle, Dlt_LogLevelType LogLevel):设置日志级别。
Std_ReturnType Dlt_GetLogLevel(Dlt_ContextHandleType ContextHandle, Dlt_LogLevelType* LogLevelPtr):获取日志级别。
Std_ReturnType Dlt_SetTraceStatus(Dlt_ContextHandleType ContextHandle, Dlt_TraceStatusType TraceStatus):设置跟踪状态。

7.5 状态 / 异步

Dlt_StatusType Dlt_GetStatus(void):获取 DLT 状态。
Std_ReturnType Dlt_AsyncLogMessageFinished(Dlt_ContextHandleType ContextHandle):异步日志消息完成通知。

7.6 回调(来自 SoAd)

void Dlt_SoAdRxIndication(PduIdType RxPduId, const PduInfoType* PduInfoPtr):接收指示(来自 DLT Viewer 的控制消息)。
void Dlt_SoAdTxConfirmation(PduIdType TxPduId, Std_ReturnType Result):发送确认。

7.7 MainFunction

void Dlt_MainFunction(void):周期性主函数。

8 配置

DLT 配置类:

9 错误处理

9.1 开发错误

DLT_E_UNINIT:模块未初始化。
DLT_E_PARAM_POINTER:参数指针为空。
DLT_E_PARAM:参数无效。

9.2 运行时错误

DLT_E_BUSY:模块忙。
DLT_E_NO_BUFFER:无可用缓冲区。


校对记录

校对轮次:L1 自动校对(2026-06-13)