DEENESPTFRRUARHIKOZHNL

네임스페이스 apext::log

사용자 가이드AI 생성

모델링된 메시지를 외부 추적 도구로 전달하기 위한 스레드 안전 인터페이스를 제공합니다.
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을 사용한 명명은 AUTOSAR Run-Time Interface (ARTI)와 같은 특정 추적 메커니즘을 로깅 프레임워크에 연결하는 플랫폼 확장(Adaptive Platform Extension)임을 나타내는 것으로 해석할 수 있습니다. 질문 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... [SWS_LOG_20000]의 가변 매개변수 팩 params...을 수락합니다. 추적 경로의 런타임 비용을 가능한 한 낮게 유지하기 위해 사양에서는 런타임 오버헤드의 엄격한 최소화를 요구하며, 이는 예를 들어 해당 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#5aa830fe
Content hash
5aa830fe
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