DEENESPTFRRUARHIKOZHNL
AUTOSAR_AP_SWS_Persistency FIG-d88b33259f684a61 609 × 306 px 1 Release(s)

Figure 10.7: Persistency Logging Configuration

SHA-256 Inhalts-Fingerabdruck: d88b33259f684a6171c65f9e66d23bff3bc488799eb8908927d77ecbfefe107a
✦ KI-generierte Bildanalyse & technische Beschreibung Modell: gemini-3.8-flash (via agy) · Rezept figure-description@2 · erstellt am 2026-10-07

1. Diagrammtyp & Architektur-Kontext

  • Klassifikation: UML-Klassendiagramm / Metamodell-Ausschnitt für Modulkonfigurationen der AUTOSAR Adaptive Platform (APMC – Adaptive Platform Module Configuration).
  • Technischer Zweck: Definition der Konfigurationsstruktur zur Anbindung des Functional Clusters Persistency (ara::per) an das Logging- und Tracing-Framework (Diagnostic Log and Trace / ara::log). Es formalisiert die Zuordnung interner Protokollmeldungen der Persistenz-Schicht zu DLT-Kontexten und DLT-Log-Senken im Execution- bzw. Service-Instance-Manifest.

2. Komponenten, Entitäten & Schnittstellen

  • Konfigurationscontainer & Parameter-Definitionen:
    • PersistencyCommon (ApmcParamConfContainerDef): Zentraler Konfigurationscontainer für allgemeine Persistency-Parameter.
      • Multiplizität: lowerMultiplicity = 1, upperMultiplicity = 1 (obligatorischer Basiseintrag).
    • PersistencyLogging (ApmcParamConfContainerDef): Spezifischer Konfigurationscontainer zur Parametrierung der Logging-Pfade des Persistenz-Stacks.
      • Multiplizität: lowerMultiplicity = 0, upperMultiplicity = * (beliebig viele Logging-Konfigurationen pro Persistenz-Instanz zulässig, Aggregationsrolle +container).
    • ForeignDltContextRef (ApmcForeignReferenceDef): Fremdreferenzdefinition innerhalb von PersistencyLogging (Komposition +element).
      • Multiplizität: lowerMultiplicity = 1, upperMultiplicity = 1.
      • Referenziert via gerichteter Assoziation das Metamodell-Element DltContext.
    • ForeignDltLogSinkRef (ApmcForeignReferenceDef): Fremdreferenzdefinition innerhalb von PersistencyLogging (Komposition +element).
      • Multiplizität: lowerMultiplicity = 1, upperMultiplicity = 1.
      • Referenziert via gerichteter Assoziation das Metamodell-Element DltLogSink.
  • Referenzierte Metamodell-Elemente (Manifest-Ebene):
    • DltContext: Typisiert als ARElement, UploadableDesignElement. Repräsentiert die logische Entität eines DLT-Kontexts (Context-ID, App-ID, Beschreibung auf Architekturebene).
    • DltLogSink: Typisiert als UploadableDeploymentElement. Repräsentiert das Ziel der Protokollausgabe (z. B. Console, Trace-File, Netzwerk-DLT-Socket auf Deployment- bzw. Machine-Ebene).

3. Dynamisches Verhalten & Sequenzablauf (falls zutreffend)

  • Statisches Konfigurationsmodell: Das Diagramm spezifiziert kein Laufzeit-Sequenzdiagramm, sondern eine deklarative Metamodell-Vorgabe für Generatoren und Manifest-Parser.
  • Laufzeit- und Initialisierungssemantik:
    1. Manifest-Evaluation: Beim Start des Prozesses bzw. bei Initialisierung des Persistency-Stacks (ara::per) liest der Stack die instanziierten PersistencyLogging-Container aus dem bereitgestellten Manifest aus.
    2. Logger-Erzeugung: Für jeden deklarierten Eintrag wird intern über ara::log::CreateLogger (bzw. plattformspezifische DLT-Schnittstellen) der über ForeignDltContextRef definierte DltContext initialisiert.
    3. Routing zu Log-Sinks: Die interne Persistenz-Engine routet Fehler- und Diagnose-Events synchron/asynchron auf die via ForeignDltLogSinkRef zugewiesene Senke (DltLogSink).

4. Normative Relevanz & Entwickler-Hinweise

  • Manifest-Konfiguration:
    • Deklariert ein Integrator keinen PersistencyLogging-Container (Multiplizität 0..*), greifen plattform- bzw. vendorspezifische Standard-Logging-Konfigurationen.
    • Sobald ein PersistencyLogging-Container angelegt wird, müssen sowohl ForeignDltContextRef als auch ForeignDltLogSinkRef zwingend belegt werden (beide 1..1). Eine unvollständige Referenzierung führt zu Modellvalidierungsfehlern.
  • Trennung von Design und Deployment:
    • DltContext ist als UploadableDesignElement anwendungsspezifisch und plattformunabhängig konzipiert.
    • DltLogSink als UploadableDeploymentElement entkoppelt die physische Ausgabeinfrastruktur der Ziel-ECU/Maschine von der Persistenz-Implementierung.
  • Implementierung des Persistency-Stacks:
    • Stack-Entwickler dürfen Context- und Sink-IDs nicht fest im Code hinterlegen (Hardcoding-Verbot), sondern müssen zwingend die über diese APMC-Container generierten Deskriptoren an die ara::log-Infrastruktur binden.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

PersistencyCommon: ApmcParamConfContainerDef | lowerMultiplicity = 1 upperMultiplicity = 1 | PersistencyLogging: ApmcParamConfContainerDef | lowerMultiplicity = 0 upperMultiplicity = * | ForeignDltLogSinkRef: ApmcForeignReferenceDef | lowerMultiplicity = 1 upperMultiplicity = 1 | ForeignDltContextRef: ApmcForeignReferenceDef | lowerMultiplicity = 1 upperMultiplicity = 1 | ARElement UploadableDesignElement | DltContext | UploadableDeploymentElement | DltLogSink | +element | +element | +container

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R25-11 AUTOSAR_AP_SWS_Persistency S. 234 10.7 Figure 10.7: Persistency Logging Configuration