DEENESPTFRRUARHIKOZHNL

命名空间 apext::log

用户指南人工智能生成

提供用于将建模消息转发至外部跟踪工具的线程安全接口。
AI 生成 未审核 模型: gemini-3.8-flash-medium · 推理强度: medium · 温度: 不可控 · 提示词: 199c14229bd8 来源 未决问题(2)
译自德文指南gemini-3.8-flash-low · 2026-10-13 · 德文原文

提供用于将建模消息转发至外部跟踪工具的线程安全接口。

命名空间 apext::log 通过函数模板 TraceArti 提供用于将建模的跟踪消息转发至外部运行时跟踪工具的接口 [SWS_LOG_20000]。该函数仅在日志记录和跟踪之间切换时由记录器框架在内部调用,并处理特定于消息的标识符以及可变参数 [SWS_LOG_20000]。核心约束条件包括最小的运行时开销、完全的线程安全以及无错误或返回值的异常安全执行。

上下文

命名空间 apext::log 为 AUTOSAR Adaptive Platform 的日志记录和跟踪子系统提供功能接口。其主要职责在于通过函数模板 TraceArti 为外部运行时跟踪工具提供专用接口 [SWS_LOG_20000]。带有前缀 apext 的命名作为解释可能表明,它是一个平台扩展(Adaptive Platform Extension),用于将特定跟踪机制(例如 AUTOSAR 运行时接口,ARTI)连接到日志记录框架。 问题 Q-325896ce9f6b8e42 (未决)

在系统架构中,该命名空间充当内部日志记录基础设施与下游分析或跟踪工具之间的纽带。在此,主要有三个组件相互交互:内部记录器框架、位于 apext::log 内的接口函数 TraceArti 以及所连接的跟踪工具 [SWS_LOG_20000]。记录器框架处理应用程序事件,并在相应切换时将建模消息转发至 TraceArti,后者将数据移交给特定于厂商的跟踪工具 [SWS_LOG_20000]。

logger Logger-Framework trace_arti apext::log::TraceArti logger->trace_arti interner Aufruf trace_tool Trace-Tool trace_arti->trace_tool modellierte Nachricht

上下文图:TraceArti 在记录器框架与跟踪工具之间的嵌入。来源:[SWS_LOG_20000]

生命周期

命名空间 apext::log 不封装具有独立生命周期的长寿命类实例、会话对象或有状态实体。命名空间中不存在显式的初始化或终止例程;相反,该功能完全通过自由模板函数实现 [SWS_LOG_20000]。因此,跟踪功能的生命周期完全绑定到记录器框架的上级运行生命周期。

关于并发行为和操作安全性,适用严格的保证:接口 TraceArti 被显式指定为线程安全的(thread-safe)[SWS_LOG_20000]。这允许记录器框架在无需外部同步的情况下,并行从多个执行上下文和线程将跟踪调用委托给该命名空间。同时,该函数被声明为异常安全的(exception safe)和 noexcept [SWS_LOG_20000],从而在调用期间任何时候都不会发生资源泄漏或不受控制的栈展开状态。

使用路径

命名空间 apext::log 的函数并非设计用于常规应用程序软件直接调用。相反,当记录器框架在传统日志记录与基于 ARTI 的跟踪之间切换时,TraceArti 仅在内部被该框架调用 [SWS_LOG_20000]。开发者或集成人员在需要时包含相应的头文件 #include "apext/log/trace_arti.h",以获得对声明的访问权 [SWS_LOG_20000]。

在调用时,该函数处理特定于所使用的相应跟踪工具的建模消息(modeled messages)[SWS_LOG_20000]。为此,接口接受一个用于标识消息且属于实现定义类型 MsgId 的标识符 msg_id,以及一个任意类型的可变参数包 params... Params... [SWS_LOG_20000]。为了使跟踪路径中的运行时开销尽可能低,规范要求严格最小化运行时开销;例如,这应通过基于相应 MsgId 的定制模板特化来实现 [SWS_LOG_20000]。可以推测,此类特化通常由工具生成器在针对相应目标系统的工具链集成框架内生成。

错误场景

在错误处理方面,apext::log 采用容错设计,不向调用方指示运行时错误。TraceArti 的函数签名未定义返回值(void),并通过 noexcept 规范完全禁止抛出 C++ 异常 [SWS_LOG_20000]。因此,前置条件(例如消息 ID 和传入有效载荷的有效性)必须强制由调用记录器框架或相应特化来保证,因为在出错时无法传递错误代码 [SWS_LOG_20000]。

本指南由 AI 创建,总结了关于 apext::log 接口的规范。

函数

TraceArti 函数

Handles a modeled message, specific to the used trace tool. This function is only called internally by the Logger framework when switching between Log and TraceArti. It represents the interface to trace tools. The runtime overhead of this function shall be kept as minimal as possible, e.g. by using specializations based on the MsgId.

template <typename MsgId, typename... Params> void TraceArti (const MsgId &msg_id, const Params &... params) noexcept;

自由函数文档

函数 TraceArti [SWS_LOG_20000] Upstream: RS_LT_00003

template <typename MsgId, typename... Params> void TraceArti (const MsgId &msg_id, const Params &...                       params) noexcept;

Handles a modeled message, specific to the used trace tool. This function is only called internally by the Logger framework when switching between Log and TraceArti. It represents the interface to trace tools. The runtime overhead of this function shall be kept as minimal as possible, e.g. by using specializations based on the MsgId.

AI 生成 未审核 模型: gemini-3.8-flash-medium · 推理强度: medium · 温度: 不可控 · 提示词: afa9b5cd99a6 来源 未决问题(1)
译自德文指南gemini-3.8-flash-low · 2026-10-13 · 德文原文

用法与调用上下文

命名空间apext::log中的模板函数TraceArti用于专门针对各连接的跟踪工具处理建模消息[SWS_LOG_20000]。它用作跟踪工具的接口,并非供应用程序代码直接调用,而是在日志记录与 TraceArti 之间切换时,由记录器框架在内部专门调用[SWS_LOG_20000]。作为参数,该函数通过msg_id接收实现特定类型的消息标识对象,并通过参数包params接收消息参数;未定义返回值[SWS_LOG_20000]。

并发性、错误处理和运行时行为

该接口被指定为线程安全(thread-safe)和异常安全(通过noexcept实现 exception safe)[SWS_LOG_20000]。不存在特定错误代码或错误报告机制,因此该函数必须完全杜绝异常[SWS_LOG_20000]。

TraceArti的运行时开销应保持尽可能小[SWS_LOG_20000]。为此,规范明确提到了基于模板参数MsgId的特化作为解决方案[SWS_LOG_20000]。解释:对于跟踪工具的连接,这可能意味着消息特定的处理逻辑最好在编译期通过模板特化进行优化。 问题 Q-24ea7f9557ada827 (未决)

本使用说明基于 R25-11 的 AUTOSAR 规范自动创建。

实现者指南即将推出(复杂度 I1)

Header-Datei#include "apext/log/trace_arti.h"
Scopenamespace apext::log
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Template-Parameter

ParameterBeschreibung
MsgIdParamsthe type of the msg_id parameter the types of the params parameters

Parameter (in)

ParameterBeschreibung
msg_idan implementation-defined type identifying the message object
paramsthe arguments of the message

Rückgabewert

TypBeschreibung
None

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_LOG_20000
Status
valid/auto-approved
Version
AUTOSAR/AP/record/SWS_LOG_20000@rel:R25-11#ee5e272f
Content hash
ee5e272f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_LogAndTrace.pdf#nameddest=SWS_LOG_20000
Status: valid/auto-approved Version: rel:R25-11#5511a3f8 Versionshistorie & Revisions (2 transitions, 4 revision)
Current State
valid/auto-approved
Reason
unchanged
Campaign
2026-08-sws-log-pilot-after-tool-improvement
Active Version
AUTOSAR/AP/record/SWS_LOG_20000@rel:R25-11#5511a3f8
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#4e0ac6b92026-09-30
  • R23-11rel:R23-11#ab5e92c82026-10-14
  • R24-11rel:R24-11#5511a3f82026-10-14
  • R25-11rel:R25-11#5511a3f82026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-10toolvalid/unversioned → invalid/obsoletespec update after tool improvement2026-08-sws-log-pilot-after-tool-improvement
2026-08-10toolinvalid/obsolete → valid/auto-approvedunchanged2026-08-sws-log-pilot-after-tool-improvement