DEENESPTFRRUARHIKOZHNL

클래스 ara::diag::Monitor

[SWS_DM_00542] Upstream: RS_Diag_04179

class Monitor final {...};

Class to implement operations on diagnostic Monitor interface.

Header-Datei#include "ara/diag/monitor.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopenamespace ara::diag

사용자 가이드AI 생성

진단 모니터링 실행 및 Diagnostic Management로의 상태 보고에 사용됩니다.
AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 49f63d89472d 출처 열린 질문 (2)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

진단 모니터링 실행 및 Diagnostic Management로의 상태 보고에 사용됩니다.

클래스 ara::diag::Monitor은(는) 진단 모니터링 기능의 구현 및 Diagnostic Management로의 연결을 위한 기능 인터페이스를 제공합니다 [SWS_DM_00548]. 포트 프로토타입에 바인딩된 후 애플리케이션은 Offer()을(를) 통해 수신 준비 상태를 알리고 ReportMonitorAction()을(를) 통해 테스트 결과를 지속적으로 전송합니다 [SWS_DM_01088], [SWS_DM_00543]. Monitor 인스턴스는 복사하거나 이동할 수 없으며 모든 연산은 스레드 안전하지 않은 것으로 명세되어 있습니다 [SWS_DM_01685].

컨텍스트

클래스 ara::diag::Monitor은(는) Adaptive Platform 내에서 진단 모니터링 기능(모니터)을 구현하기 위한 표준화된 C++ 인터페이스를 나타냅니다 [SWS_DM_00548]. 모니터는 기능 소프트웨어 컴포넌트의 오류 증상을 감지하고 보고하는 역할을 담당하며 해당 상태를 Diagnostic Management(DM) 모듈로 전송합니다.

AUTOSAR 시스템 모델에 대한 바인딩은 ara::core::InstanceSpecifier을(를) 통해 수행되며, 이는 DiagnosticMonitorInterface에 의해 유형화된 PortPrototype을(를) 반드시 참조해야 합니다 [SWS_DM_00548]. 전체 처리에는 본질적으로 세 가지 컴포넌트가 관여합니다: 애플리케이션별 기능 모니터링(Application), ara::diag::Monitor의 로컬 인터페이스 인스턴스, 그리고 이벤트를 수신하고 재초기화를 요청하는 플랫폼 모듈 Diagnostic Management(DM)입니다.

diag_kontext app Anwendungssoftware (Monitor-Logik) mon ara::diag::Monitor (Port-Schnittstelle) app->mon ReportMonitorAction() Offer() / StopOffer() mon->app initMonitor-Callback getFaultDetectionCounter() dm Diagnostic Management (DM 데몬) mon->dm Status- & Entprellmeldungen dm->mon Initialisierungs- & Steuerbefehle

컨텍스트 다이어그램: 애플리케이션 소프트웨어, ara::diag::Monitor 및 Diagnostic Management 간의 상호 작용 관계. 출처: [SWS_DM_00548], [SWS_DM_00543], [SWS_DM_01088], [SWS_DM_01089]

수명 주기

모니터의 인스턴스화는 모델에 정의된 디바운싱(Debouncing) 메커니즘을 따릅니다. Adaptive Platform은 이를 위해 네 가지 생성자 변형을 제공합니다:

  • InitMonitorNotifier 콜백 및 Fault Detection Counter(std::function<std::int8_t()> getFaultDetectionCounter) 쿼리를 위한 함수 포인터가 등록된 모니터 내부 디바운싱 [SWS_DM_00548].
  • CounterBased 유형의 매개변수가 전달되는 카운터 기반 디바운싱 [SWS_DM_00549].
  • TimeBased 유형의 매개변수가 전달되는 시간 기반 디바운싱 [SWS_DM_00550].
  • 디바운싱 알고리즘이 없는 직접 모니터링 [SWS_DM_01972].

ara::diag::Monitor의 인스턴스는 원래 메모리 위치에 고정되어 바인딩됩니다. 복사 생성자 [SWS_DM_01685] 및 복사 대입 연산자 [SWS_DM_01683]은(는) 삭제되었습니다(delete). 마찬가지로 이동 생성자 [SWS_DM_01686] 및 이동 대입 [SWS_DM_01684]도 명시적으로 삭제되었습니다.

생성 후 인스턴스는 제공되지 않음(Unoffered) 상태에 있습니다. 애플리케이션이 Offer()을(를) 명시적으로 호출해야 비로소 initMonitor과(와) 같은 진단 콜아웃을 수신하고 처리할 준비가 되었음을 선언합니다 [SWS_DM_01088]. StopOffer()을(를) 사용하면 DM으로부터의 진단 요청 전달이 다시 비활성화됩니다 [SWS_DM_01089]. StopOffer() 호출 후 Offer()을(를) 다시 호출하여 나중에 작동을 재개하는 것이 가능할 것으로 추정됩니다. 질문 Q-136565db34b28ae6 (열림) 모니터 객체가 최종 소멸되기 전에 보류 중인 알림을 안전하게 차단하기 위해 애플리케이션이 StopOffer()을(를) 실행해야 할 것으로 추정됩니다.

동시성과 관련하여 ara::diag::Monitor의 모든 멤버 함수는 스레드 안전하지 않음으로 명세되어 있습니다 [SWS_DM_00548], [SWS_DM_01088], [SWS_DM_00543], [SWS_DM_01089]. 애플리케이션 소프트웨어의 여러 스레드가 동일한 모니터에 접근하는 경우 동기화는 애플리케이션의 책임입니다. 그러나 모든 메서드는 예외 안전(noexcept)(으)로 선언되어 있습니다 [SWS_DM_00548], [SWS_DM_01088], [SWS_DM_00543], [SWS_DM_01089].

diag_lebenszyklus unoffered 제공되지 않음 (Unoffered / 생성됨) offered Angeboten (Offered / Aktiv) unoffered->offered Offer() [Erfolg] offered->offered Offer() [kAlreadyOffered] stopped Gestoppt (Stopped / Inaktiv) offered->stopped StopOffer() stopped->offered Offer()

상태 다이어그램: ara::diag::Monitor의 서비스 제공 수명 주기 상태 및 전이. 출처: [SWS_DM_01088], [SWS_DM_01089]

사용 경로

오류 경로를 모니터링하기 위한 일반적인 흐름은 다음 단계로 구성됩니다:

  1. 인스턴스화: 애플리케이션이 InstanceSpecifier, 콜백 initMonitor 및 필요한 경우 디바운싱 매개변수 또는 FDC 콜백을 지정하여 Monitor 인스턴스를 생성합니다 [SWS_DM_00548], [SWS_DM_00549].
  2. 서비스 제공: 모니터가 Offer()을(를) 통해 DM에 수신 준비가 되었음을 등록합니다 [SWS_DM_01088].
  3. 초기화: Diagnostic Management는 등록된 InitMonitorNotifier 콜백을 통해 대기 중인 초기화 이벤트에 대해 애플리케이션에 알립니다 [SWS_DM_01088].
  4. 주기적/이벤트 기반 보고: 정상 운영 중에 애플리케이션은 ReportMonitorAction(action)을(를) 통해 모니터링 경로의 상태를 지속적으로 보고합니다 [SWS_DM_00543]. 전달되는 액션에는 테스트 결과(한정됨/한정되지 않음) 또는 디바운싱 제어 및 사전 저장(Prestorage) 명령이 포함됩니다. 모니터 내부 디바운싱이 구성된 경우, DM은 필요 시 등록된 콜백을 통해 오류 한계값을 쿼리합니다 [SWS_DM_00548].
  5. 서비스 종료: 시스템 종료 전 또는 진단 기능 비활성화 시, 애플리케이션은 StopOffer()을(를) 호출하여 수신되는 DM 메시지를 차단합니다 [SWS_DM_01089].
모니터 사용의 일반적인 흐름애플리케이션ara::diag::MonitorDiagnostic ManagementMonitor(specifier, initMonitor, ...)Offer()Service anbietenResult<void>Use Case: 초기화 및 모니터링initMonitor(action)ReportMonitorAction(action)Status aktualisierenoptMonitor-internes DebouncinggetFaultDetectionCounter()std::int8_t FDCUse Case: DeaktivierungStopOffer()Weiterleitung deaktivieren

시퀀스 다이어그램: 초기화부터 상태 보고 및 비활성화까지의 일반적인 호출 순서. 출처: [SWS_DM_00548], [SWS_DM_01088], [SWS_DM_00543], [SWS_DM_01089]

오류 시나리오

ara::diag::Monitor에서 오류 상황은 두 가지 서로 다른 레벨로 나타납니다: ara::core::Result을(를) 통한 오류 코드 또는 프레임워크의 런타임 위반(Violations).

Offer() 메서드는 ara::core::Result<void>을(를) 반환합니다. 모니터가 이미 제공(offered) 상태에 있는 경우 호출이 실패하고 오류 코드 DiagOfferErrc::kAlreadyOffered을(를) 반환합니다 [SWS_DM_01088].

심각한 구성 오류 또는 호출 오류는 정의된 위반 메시지를 트리거합니다:

  • InstanceSpecifierMappingIntegrityViolation: 프로세스의 모델 컨텍스트에서 InstanceSpecifier을(를) 확인할 수 없거나 PortPrototype을(를) 참조하지 않습니다 [SWS_DM_00548].
  • PortInterfaceMappingViolation: 참조된 포트가 DiagnosticMonitorInterface(으)로 타입화되지 않았습니다 [SWS_DM_00548].
  • ProcessMappingViolation: 런타임 인스턴스에 일치하는 모델링된 프로세스가 존재하지 않습니다 [SWS_DM_00548].
  • InstanceSpecifierAlreadyInUseViolation: 현재 프로세스 내에서 InstanceSpecifier이(가) 이미 다른 모니터에 의해 사용 중입니다 [SWS_DM_00548].
  • InvalidDebouncingAlgorithmViolation: 생성자에서 선택된 디바운싱 메커니즘이 DEXT 진단 설명에 모델링된 디바운싱 방식과 다릅니다 [SWS_DM_00548], [SWS_DM_00549], [SWS_DM_00550].
  • UnexpectedMonitorActionHandlingViolation: 구성된 디바운싱 알고리즘에서 지원되지 않는 액션 값이 ReportMonitorAction() 메서드에 전달되었습니다 [SWS_DM_00543].

이 가이드는 AUTOSAR Adaptive Platform 릴리스 R25-11 사양을 기반으로 합니다.

멤버 맵

생성자 및 소멸자

1

연산자

1

클래스 다이어그램

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__diag__Monitor586 Monitor + Monitor() + operator=() + Offer() + ReportMonitorAction() + StopOffer()

상세 보기

개요에서 항목을 선택하세요.

생성자 및 소멸자

Monitor 함수 6

Monitor constructor for Monitors with Monitor-internal debouncing. using ara::diag::CounterBased; using ara::diag::TimeBased;

오버로드 Monitor 6
Monitor (const ara::core::InstanceSpecifier &specifier, InitMonitor Notifier initMonitor, std::function< std::int8_t()> getFaultDetection Counter) noexcept; SWS_DM_00548
Monitor (const ara::core::InstanceSpecifier &specifier, InitMonitor Notifier initMonitor, CounterBased defaultValues) noexcept; SWS_DM_00549
Monitor (const ara::core::InstanceSpecifier &specifier, InitMonitor Notifier initMonitor, TimeBased defaultValues) noexcept; SWS_DM_00550
Monitor (Monitor &)=delete; SWS_DM_01685
Monitor (Monitor &&) noexcept=delete; SWS_DM_01686
Monitor (const ara::core::InstanceSpecifier &specifier, InitMonitor Notifier initMonitor) noexcept; SWS_DM_01972

메서드

Offer 함수

With the Offer the application states that it is ready to receive and process initMonitor callouts.

ara::core::Result< void > Offer () noexcept;

Function to report the status information being relevant for error monitoring paths.

void ReportMonitorAction (MonitorAction action) noexcept;
StopOffer 함수

This StopOffer will disable the forwarding of request messages from DM.

void StopOffer () noexcept;

연산자

operator= 함수 2

Monitor shall be a single not assignable instance.

오버로드 = 2
Monitor & operator= (Monitor &)=delete; SWS_DM_01683
Monitor & operator= (Monitor &&)=delete; SWS_DM_01684

메서드 문서

함수 Monitor [SWS_DM_00548] Upstream: RS_AP_00121, RS_AP_00137, RS_Diag_04179, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

Monitor (const ara::core::InstanceSpecifier &specifier, InitMonitor Notifier initMonitor, std::function< std::int8_t()> getFaultDetection Counter) noexcept;

Monitor constructor for Monitors with Monitor-internal debouncing. using ara::diag::CounterBased; using ara::diag::TimeBased;

Header-Datei#include "ara/diag/monitor.h"
Scopeclass ara::diag::Monitor
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe
Verletzungen (Violations)InstanceSpeci- InstanceSpecifier either cannot be resolved in the model in the fierMappingIn- context of your executable, or it refers to a model element other tegrityViolation than a PortPrototype. PortInterfaceMap- A PortPrototype that is referenced by a pingViolation DiagnosticMonitorPortMapping needs to be typed by a DiagnosticMonitorInterface. ProcessMappingVio- Matching InstanceRef exists, but no matching (modelled) Process lation found that matches the (runtime) process. InstanceSpecifier- Violation message that is sent in case a constructor in the ara AlreadyInUseViola- framework was called with an InstanceSpecifier already in use in tion this process. InvalidDebouncin- Mismatching Debounce Algorithm in DEXT i.e gAlgorithmViola- DiagnosticEventToDebounceAlgorithmMapping shall be tion mapped to DiagnosticEventToDebounceAlgorithmMapping. DiagnosticDebounceAlgorithmProps which aggregates DiagEventDebounceMonitorInternal or DiagnosticEventToDebounceAlgorithmMapping shall not exist.

Parameter (in)

ParameterBeschreibung
specifierInstanceSpecifier to a PortPrototype of a DiagnosticMonitorInterface.
initMonitorPossibility to register an InitMonitor callback
getFaultDetectionCounterPossibility to register a function to get the current FDC for this event.

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

Record
AUTOSAR/AP/record/SWS_DM_00548
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00548@rel:R25-11#a92518c8
Content hash
a92518c8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00548
Status: valid/unmigrated Version: rel:R25-11#c407131c Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00548@rel:R25-11#c407131c
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#b150023b2026-09-30
  • R19-11rel:R19-11#9dae45942026-10-14
  • R20-11rel:R20-11#1b9245172026-10-14
  • R21-11rel:R21-11#9d09d2232026-10-14
  • R22-11rel:R22-11#96a416ec2026-10-14
  • R23-11rel:R23-11#bc098b922026-10-14
  • R24-11rel:R24-11#5a7c66fa2026-10-14
  • R25-11rel:R25-11#c407131c2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

함수 Monitor [SWS_DM_00549] Upstream: RS_AP_00137, RS_AP_00121, RS_Diag_04179, RS_Diag_04068, RS_ AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

Monitor (const ara::core::InstanceSpecifier &specifier, InitMonitor Notifier initMonitor, CounterBased defaultValues) noexcept;

Monitor constructor for Monitors with counter-based debouncing.

Header-Datei#include "ara/diag/monitor.h"
Scopeclass ara::diag::Monitor
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe
Verletzungen (Violations)InstanceSpeci- InstanceSpecifier either cannot be resolved in the model in the fierMappingIn- context of your executable, or it refers to a model element other tegrityViolation than a PortPrototype. PortInterfaceMap- A PortPrototype that is referenced by a pingViolation DiagnosticMonitorPortMapping needs to be typed by a DiagnosticMonitorInterface. ProcessMappingVio- Matching InstanceRef exists, but no matching (modelled) Process lation found that matches the (runtime) process. InstanceSpecifier- Violation message that is sent in case a constructor in the ara AlreadyInUseViola- framework was called with an InstanceSpecifier already in use in tion this process. InvalidDebouncin- Mismatching Debounce Algorithm in DEXT i.e gAlgorithmViola- DiagnosticEventToDebounceAlgorithmMapping shall be tion mapped to DiagnosticEventToDebounceAlgorithmMapping. DiagnosticDebounceAlgorithmProps which aggregates DiagEventDebounceCounterBased.

Parameter (in)

ParameterBeschreibung
specifierInstanceSpecifier to a PortPrototype of a DiagnosticMonitorInterface.
initMonitorPossibility to register an InitMonitor callback
defaultValuesDefault values for CounterBased debouncing

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

Record
AUTOSAR/AP/record/SWS_DM_00549
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00549@rel:R25-11#ffcae12c
Content hash
ffcae12c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00549
Status: valid/unmigrated Version: rel:R25-11#b6b90a41 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00549@rel:R25-11#b6b90a41
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#aa05357e2026-09-30
  • R19-11rel:R19-11#409ae35a2026-10-14
  • R20-11rel:R20-11#c96bf0f52026-10-14
  • R21-11rel:R21-11#269dc8742026-10-14
  • R22-11rel:R22-11#0b5b8e002026-10-14
  • R23-11rel:R23-11#86fe0f482026-10-14
  • R24-11rel:R24-11#363e9ef32026-10-14
  • R25-11rel:R25-11#b6b90a412026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

함수 Monitor [SWS_DM_00550] Upstream: RS_AP_00121, RS_AP_00137, RS_Diag_04179, RS_Diag_04225, RS_ AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

Monitor (const ara::core::InstanceSpecifier &specifier, InitMonitor Notifier initMonitor, TimeBased defaultValues) noexcept;

Monitor constructor for Monitors with time-based debouncing.

Header-Datei#include "ara/diag/monitor.h"
Scopeclass ara::diag::Monitor
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe
Verletzungen (Violations)InstanceSpeci- InstanceSpecifier either cannot be resolved in the model in the fierMappingIn- context of your executable, or it refers to a model element other tegrityViolation than a PortPrototype. PortInterfaceMap- A PortPrototype that is referenced by a pingViolation DiagnosticMonitorPortMapping needs to be typed by a DiagnosticMonitorInterface. ProcessMappingVio- Matching InstanceRef exists, but no matching (modelled) Process lation found that matches the (runtime) process. InstanceSpecifier- Violation message that is sent in case a constructor in the ara AlreadyInUseViola- framework was called with an InstanceSpecifier already in use in tion this process. InvalidDebouncin- Mismatching Debounce Algorithm in DEXT i.e gAlgorithmViola- DiagnosticEventToDebounceAlgorithmMapping shall be tion mapped to DiagnosticEventToDebounceAlgorithmMapping. DiagnosticDebounceAlgorithmProps which aggregates DiagEventDebounceTimeBased.

Parameter (in)

ParameterBeschreibung
specifierInstanceSpecifier to a PortPrototype of a DiagnosticMonitorInterface.
initMonitorPossibility to register an InitMonitor callback
defaultValuesDefault values for TimeBased debouncing

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

Record
AUTOSAR/AP/record/SWS_DM_00550
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00550@rel:R25-11#426ad3ae
Content hash
426ad3ae
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00550
Status: valid/unmigrated Version: rel:R25-11#37a4f2c0 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00550@rel:R25-11#37a4f2c0
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#1ba6e97a2026-09-30
  • R19-11rel:R19-11#4f8f56cd2026-10-14
  • R20-11rel:R20-11#cbc0dc0f2026-10-14
  • R21-11rel:R21-11#ed45df312026-10-14
  • R22-11rel:R22-11#7eec884b2026-10-14
  • R23-11rel:R23-11#6ec7d8d22026-10-14
  • R24-11rel:R24-11#1f707ece2026-10-14
  • R25-11rel:R25-11#37a4f2c02026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

함수 Monitor [SWS_DM_01685] Upstream: RS_AP_00147

Monitor (Monitor &)=delete;

Monitor shall be a single not copy-able instance.

Header-Datei#include "ara/diag/monitor.h"
Scopeclass ara::diag::Monitor

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

Record
AUTOSAR/AP/record/SWS_DM_01685
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01685@rel:R25-11#c6da66a2
Content hash
c6da66a2
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01685
Status: valid/unmigrated Version: rel:R25-11#b61bdc4e Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01685@rel:R25-11#b61bdc4e
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#885cac442026-09-30
  • R23-11rel:R23-11#1187bdc12026-10-14
  • R24-11rel:R24-11#b61bdc4e2026-10-14
  • R25-11rel:R25-11#b61bdc4e2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

함수 Monitor [SWS_DM_01686] Upstream: RS_AP_00147

Monitor (Monitor &&) noexcept=delete;

Move constructor of Monitor.

Header-Datei#include "ara/diag/monitor.h"
Scopeclass ara::diag::Monitor

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

Record
AUTOSAR/AP/record/SWS_DM_01686
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01686@rel:R25-11#2b698ca8
Content hash
2b698ca8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01686
Status: valid/unmigrated Version: rel:R25-11#0958d508 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01686@rel:R25-11#0958d508
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#e3f6b2e12026-09-30
  • R23-11rel:R23-11#f9be95aa2026-10-14
  • R24-11rel:R24-11#0958d5082026-10-14
  • R25-11rel:R25-11#0958d5082026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

함수 Monitor [SWS_DM_01972] Upstream: RS_AP_00121, RS_AP_00137, RS_Diag_04179, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

Monitor (const ara::core::InstanceSpecifier &specifier, InitMonitor Notifier initMonitor) noexcept;

Monitor constructor for Monitors without debouncing.

Header-Datei#include "ara/diag/monitor.h"
Scopeclass ara::diag::Monitor
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe
Verletzungen (Violations)InstanceSpeci- InstanceSpecifier either cannot be resolved in the model in the fierMappingIn- context of your executable, or it refers to a model element other tegrityViolation than a PortPrototype. PortInterfaceMap- A PortPrototype that is referenced by a pingViolation DiagnosticMonitorPortMapping needs to be typed by a DiagnosticMonitorInterface. ProcessMappingVio- Matching InstanceRef exists, but no matching (modelled) Process lation found that matches the (runtime) process. InstanceSpecifier- Violation message that is sent in case a constructor in the ara AlreadyInUseViola- framework was called with an InstanceSpecifier already in use in tion this process. InvalidDebouncin- Mismatching Debounce Algorithm in DEXT i.e gAlgorithmViola- DiagnosticEventToDebounceAlgorithmMapping shall be tion mapped to DiagnosticEventToDebounceAlgorithmMapping. DiagnosticDebounceAlgorithmProps which aggregates DiagEventDebounceMonitorInternal or DiagnosticEventToDebounceAlgorithmMapping shall not exist.

Parameter (in)

ParameterBeschreibung
specifierInstanceSpecifier to a PortPrototype of a DiagnosticMonitorInterface.
initMonitorPossibility to register an InitMonitor callback

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

Record
AUTOSAR/AP/record/SWS_DM_01972
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01972@rel:R25-11#c37f2072
Content hash
c37f2072
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01972
Status: valid/unmigrated Version: rel:R25-11#9ab5ff05 Versionshistorie & Revisions (1 transition, 3 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01972@rel:R25-11#9ab5ff05
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#2b82c40a2026-09-30
  • R24-11rel:R24-11#9596c0212026-10-14
  • R25-11rel:R25-11#9ab5ff052026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

함수 Offer [SWS_DM_01088] Upstream: RS_AP_00119, RS_AP_00139, RS_Diag_04169

ara::core::Result< void > Offer () noexcept;

With the Offer the application states that it is ready to receive and process initMonitor callouts.

AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 2e8d03769af8 출처
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

Adaptive Application은 메서드 Offer 호출을 통해 initMonitor 콜아웃을 수신하고 처리할 준비가 되었음을 Diagnostic Management(DM)에 알립니다 [SWS_DM_01088]. 클래스 ara::diag::Monitor의 메서드는 매개변수가 없으며 ara::core::Result<void>을(를) 반환합니다 [SWS_DM_01088]. 이름은 ara::com을(를) 본떠 선택되었지만, 진단 컴포넌트의 특정 구현체이며 통신 서비스와 혼동해서는 안 됩니다 AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”.

오류 발생 시, 서비스가 이미 이전에 제공된 상태라면 메서드는 오류 코드 DiagOfferErrc::kAlreadyOffered을(를) 반환합니다 [SWS_DM_01088]. 이는 진단 오류 도메인 내에서 이미 활성화된 오퍼를 보고하기 위한 열거자(enumerator)에 해당합니다 [SWS_DM_00514]. 성공적으로 호출되면 반환 객체에 오류가 포함되지 않습니다.

동시성과 관련하여 이 메서드는 not thread-safe로 명시되어 있으므로, 동일한 인스턴스에 대한 병렬 호출은 애플리케이션 측에서 동기화되어야 합니다 [SWS_DM_01088]. 또한 이 함수는 예외 안전(exception safe) 및 noexcept(으)로 선언되어 있습니다 [SWS_DM_01088].

상호작용 관점에서 해당 인터페이스는 DM의 알림을 위한 제공된 포트(provided port) 역할을 하며, 애플리케이션은 진단 상태를 DM에 보고합니다 AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”. Offer을(를) 통한 서비스 제공은 DM이 내부, 카운터 기반 또는 시간 기반 디바운싱을 사용하는 모니터에 대해 노티파이어 initMonitor을(를) 트리거할 수 있도록 합니다 AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”. 서비스 준비 상태의 종료는 메서드 StopOffer을(를) 통해 수행됩니다 AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”.

이 사용 지침은 자동으로 작성되었습니다. 모든 진술은 AUTOSAR Adaptive Platform 명세에 의해 뒷받침됩니다.

구현자 가이드 준비 중 (복잡도 I2)

Header-Datei#include "ara/diag/monitor.h"
Scopeclass ara::diag::Monitor
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
ara::core::Result< void >Returns nothing or an error.

Fehler

FehlercodeBeschreibung
DiagOfferErrc::kAlreadyOfferedrollback_semantics The service is already offered.

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

Record
AUTOSAR/AP/record/SWS_DM_01088
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01088@rel:R25-11#b63e2edf
Content hash
b63e2edf
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01088
Status: valid/unmigrated Version: rel:R25-11#c26ecf6d Versionshistorie & Revisions (1 transition, 6 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01088@rel:R25-11#c26ecf6d
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#14a77d032026-09-30
  • R21-11rel:R21-11#faa82eee2026-10-14
  • R22-11rel:R22-11#a9c6d5b82026-10-14
  • R23-11rel:R23-11#2bc534172026-10-14
  • R24-11rel:R24-11#51ad38872026-10-14
  • R25-11rel:R25-11#c26ecf6d2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

함수 ReportMonitorAction [SWS_DM_00543] Upstream: RS_Diag_04179, RS_AP_00139, RS_AP_00119

void ReportMonitorAction (MonitorAction action) noexcept;

Function to report the status information being relevant for error monitoring paths.

AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 8334da733b55 출처
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

클래스 ara::diag::Monitor의 동기식 메소드 ReportMonitorAction은(는) 진단 검사의 상태 및 모니터링 정보를 Diagnostic Management 데몬의 오류 모니터링에 보고합니다[SWS_DM_00543]. 애플리케이션은 MonitorAction 타입의 매개변수 action을(를) 통해 적격 또는 부적격 테스트 결과나 디바운싱을 제어하고 사전 저장(Prestorage)을 트리거하기 위한 제어 명령을 전달합니다[SWS_DM_00543]. 이 함수는 반환값을 제공하지 않으며(void), noexcept 및 예외 안전으로 선언되어 있습니다[SWS_DM_00543].

진단 이벤트의 구성된 디바운싱 방식에서 지원되지 않는 action 값을 사용하여 ReportMonitorAction이(가) 호출되면, Diagnostic Manager는 프로세스 위반을 발생시킵니다[SWS_DM_01988]. 또한 시스템은 인에이블 조건이 충족되지 않는 상황을 위한 kReportIgnored와(과) 같이, 타입 DiagErrc에서 내부 오류 코드를 정의합니다[SWS_DM_00514].

통합 및 동시성에 대해 다음 경계 조건이 적용됩니다:

  • 스레드 안전성: 이 함수는 스레드 안전하지 않습니다(not thread-safe)[SWS_DM_00543]. 동일한 모니터 인스턴스에 대한 병렬 호출은 호출자 측에서 동기화되어야 합니다(생성자를 통해 스레드 안전성을 구성할 수 있는 MultipleMonitor와(과) 다름[SWS_DM_01698]).
  • 인에이블 조건: 진단 이벤트에 할당된 Enable Condition이 충족되지 않으면 ReportMonitorAction 호출이 무시됩니다SWS Diagnostics §7.3.4.1.4 “EnableConditions”.
  • 디바운싱: kPrefailed과(와) 같이 보고된 동작은 구성된 단계 크기에 따라 내부 디바운스 카운터를 변경하며[SWS_DM_00875], 임계값에 도달하여 오류가 kFinallyDefective(으)로 분류될 때까지 계속됩니다[SWS_DM_00024].

이 사용 지침은 AUTOSAR AP R25-11 사양을 기반으로 자동 생성되었습니다.

구현자 가이드 준비 중 (복잡도 I2)

Header-Datei#include "ara/diag/monitor.h"
Scopeclass ara::diag::Monitor
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe
Verletzungen (Violations)UnexpectedMoni- ara::diag::Monitor::ReportMonitorAction is called with torActionHan- a parameter action value that is not supported by the used dlingViolation debouncing method.

Parameter (in)

ParameterBeschreibung
actionContains either the last (un-)qualified test result of the diagnostic monitor or commands to control the debouncing or to force a prestorage.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_00543
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00543@rel:R25-11#63a608d5
Content hash
63a608d5
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00543
Status: valid/unmigrated Version: rel:R25-11#f21b58da Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00543@rel:R25-11#f21b58da
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#060fb8752026-09-30
  • R19-11rel:R19-11#ecd452012026-10-14
  • R20-11rel:R20-11#601960092026-10-14
  • R21-11rel:R21-11#e35f2a592026-10-14
  • R22-11rel:R22-11#52a806d52026-10-14
  • R23-11rel:R23-11#3d9de7712026-10-14
  • R24-11rel:R24-11#f069565a2026-10-14
  • R25-11rel:R25-11#f21b58da2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

함수 StopOffer [SWS_DM_01089] Upstream: RS_Diag_04169

void StopOffer () noexcept;

This StopOffer will disable the forwarding of request messages from DM.

AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: e17ef3becf1d 출처 열린 질문 (1)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

ara::diag::Monitor::StopOffer 메서드는 Diagnostic Management(DM)로부터 관련 모니터 인스턴스([SWS_DM_01089])로의 요청 및 메시지 전달을 비활성화합니다. 호출은 동기적으로 실행되고 전달 매개변수가 필요하지 않으며 반환값이 없습니다([SWS_DM_01089]). 이 동작은 Offer의 대응물 역할을 하며, 관련 시스템 부분을 일시적으로 모니터링할 필요가 없는 경우 Adaptive Application이 활성 모니터링을 일시 중단할 수 있도록 허용합니다(AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”). 식별자는 ara::com의 인터페이스를 참조하지만, 사양에서는 이것이 ara::diag::Monitor의 독립적인 구현임을 명시적으로 강조합니다(AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”).

오류 처리와 관련하여 이 함수는 noexcept(으)로 선언되어 있으며 예외 안전(exception safe)한 것으로 간주됩니다. 특정 오류 코드나 오류 메시지는 존재하지 않습니다([SWS_DM_01089]). 주요 제약 사항으로 StopOffer은(는) 스레드 안전하지 않음(not thread-safe)으로 분류됩니다([SWS_DM_01089]). 해석: 동일한 모니터 객체에 대한 동시 접근 시, 호출자 자신이 적절한 동기화를 담당해야 할 것으로 보입니다. 질문 Q-3ead3049b4378083 (열림)

전체 시스템에서 StopOffer은(는) 진단 모듈의 통일된 패턴에 통합됩니다. DM 메시지 전달을 비활성화하기 위한 유사한 인터페이스는 특히 GenericRoutine([SWS_DM_00558]), CommunicationControl([SWS_DM_00810]), EcuResetRequest([SWS_DM_01017]) 및 Authentication([SWS_DM_01131])에서 찾아볼 수 있습니다.

이 사용 지침은 자동으로 생성되었으며 AUTOSAR Adaptive R25-11 사양을 기반으로 합니다.

구현자 가이드 준비 중 (복잡도 I2)

Header-Datei#include "ara/diag/monitor.h"
Scopeclass ara::diag::Monitor
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_01089
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01089@rel:R25-11#1ad73bdc
Content hash
1ad73bdc
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01089
Status: valid/unmigrated Version: rel:R25-11#66952c09 Versionshistorie & Revisions (1 transition, 6 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01089@rel:R25-11#66952c09
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#25a3dd982026-09-30
  • R21-11rel:R21-11#ba7933502026-10-14
  • R22-11rel:R22-11#70e8e0742026-10-14
  • R23-11rel:R23-11#b0a4240b2026-10-14
  • R24-11rel:R24-11#44f352c32026-10-14
  • R25-11rel:R25-11#66952c092026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

함수 operator= [SWS_DM_01683] Upstream: RS_AP_00147

Monitor & operator= (Monitor &)=delete;

Monitor shall be a single not assignable instance.

Header-Datei#include "ara/diag/monitor.h"
Scopeclass ara::diag::Monitor

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

Record
AUTOSAR/AP/record/SWS_DM_01683
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01683@rel:R25-11#56e662c0
Content hash
56e662c0
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01683
Status: valid/unmigrated Version: rel:R25-11#35cb3ac0 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01683@rel:R25-11#35cb3ac0
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#e8fea5aa2026-09-30
  • R23-11rel:R23-11#f832beb72026-10-14
  • R24-11rel:R24-11#35cb3ac02026-10-14
  • R25-11rel:R25-11#35cb3ac02026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

함수 operator= [SWS_DM_01684] Upstream: RS_AP_00147

Monitor & operator= (Monitor &&)=delete;

Move assignment operator of Monitor.

Header-Datei#include "ara/diag/monitor.h"
Scopeclass ara::diag::Monitor

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

Record
AUTOSAR/AP/record/SWS_DM_01684
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01684@rel:R25-11#b2546b59
Content hash
b2546b59
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01684
Status: valid/unmigrated Version: rel:R25-11#0f50b9c9 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01684@rel:R25-11#0f50b9c9
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#ea640fb12026-09-30
  • R23-11rel:R23-11#e3480a782026-10-14
  • R24-11rel:R24-11#0f50b9c92026-10-14
  • R25-11rel:R25-11#0f50b9c92026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill