Main Content

AUTOSAR Adaptive 実行可能ファイルの実行時ログの設定

AUTOSAR Specification of Diagnostic Log and Trace で定義されているように、Adaptive アプリケーションはイベント ログ情報をコンソール、ファイル、またはネットワークに転送できます。これにより、複数のアプリケーションからログ データを照合、解析できるようになります。既定では、ローカル コンソールへのイベント メッセージのログが記録されます。ファイルまたはネットワークからのログ データを表示するために、サードパーティ製のツールを使用できます。

Adaptive モデルの実行時ログの既定動作を変更するには、set などの AUTOSAR プロパティ関数を使用します。コード生成では、指定されたログ プロパティを ARXML 実行マニフェスト ファイルにエクスポートします。マニフェスト ファイルは、ログ モードや詳細レベルなど、Adaptive アプリケーションの Linux® 実行可能ファイルに関する実行時動作の一部を設定するために使用します。

Adaptive モデルから Linux 実行可能ファイルを生成する場合、AUTOSAR プロパティ関数 createManifest を使用して JSON 実行マニフェスト ファイルを生成できます。JSON ファイルは、実行可能ファイルに対する既定のログ動作を変更します。Linux 実行可能ファイルをビルドした後に、JSON 実行マニフェスト ファイルを生成できます。Linux 実行可能ファイルを実行する前に、JSON 実行マニフェスト ファイルと実行可能ファイルが同じフォルダーにあることを確認します。

コンソールへのログ

  1. AUTOSAR Adaptive モデルを開きます。

  2. AUTOSAR プロパティ関数を使用して、AUTOSAR プロパティ LogMode を次のように Console に設定します。

    apiObj = autosar.api.getAUTOSARProperties(modelName);
    processPath = find(apiObj,'/','Process','PathType','FullyQualified');
    set(apiObj,processPath{1},'LogTraceLogMode','Console');

  3. オプションで、ログの詳細レベルを Verbose に設定します。

    set(apiObj,processPath{1},'LogTraceDefaultLogLevel','Verbose');

  4. モデルのコードおよび ARXML ファイルを生成します。このビルドにより、ログ プロパティがファイル modelname_ExecutionManifest.arxml に生成されます。

  5. Adaptive モデルの Linux スタンドアロン実行可能ファイルをビルド、実行する場合、関数 createManifest を使用して、マニフェスト ファイル ExecutionManifest.json を現在の作業フォルダーに生成します。

    createManifest(apiObj);

  6. Linux 実行可能ファイルを実行する前に、JSON 実行マニフェスト ファイルと実行可能ファイルが同じフォルダーにあることを確認します。

  7. アプリケーションを実行して、ログ メッセージがコンソールに表示されることを確認します。

ファイルへのログ

  1. AUTOSAR Adaptive モデルを開きます。

  2. AUTOSAR プロパティ関数を使用して、AUTOSAR プロパティ LogMode を次のように File に設定します。

    apiObj = autosar.api.getAUTOSARProperties(modelName);
    processPath = find(apiObj,'/','Process','PathType','FullyQualified');
    set(apiObj,processPath{1},'LogTraceLogMode','File');

  3. オプションで、ログ ファイルへのパスを指定します。既定では、ログ ファイルは実行可能ファイルのフォルダーに保存されます。

    set(apiObj,processPath{1},'LogTraceFilePath','customFilePath');

  4. オプションで、ログの詳細レベルを Verbose に設定します。

    set(apiObj,processPath{1},'LogTraceDefaultLogLevel','Verbose');

  5. モデルのコードおよび ARXML ファイルを生成します。このビルドにより、ログ プロパティがファイル modelname_ExecutionManifest.arxml に生成されます。

  6. Adaptive モデルの Linux スタンドアロン実行可能ファイルをビルド、実行する場合、関数 createManifest を使用して、マニフェスト ファイル ExecutionManifest.json を現在の作業フォルダーに生成します。

    createManifest(apiObj);

  7. Linux 実行可能ファイルを実行する前に、JSON 実行マニフェスト ファイルと実行可能ファイルが同じフォルダーにあることを確認します。

  8. アプリケーションを実行して、ログ ファイルが指定した場所、または既定の場所に作成されていることを確認します。

ネットワークへのログ

  1. AUTOSAR Adaptive モデルを開きます。

  2. AUTOSAR プロパティ関数を使用して、AUTOSAR プロパティ LogMode を次のように Network に設定します。

    apiObj = autosar.api.getAUTOSARProperties(modelName);
    processPath = find(apiObj,'/','Process','PathType','FullyQualified');
    set(apiObj,processPath{1},'LogTraceLogMode','Network');

  3. オプションで、ログの詳細レベルを Verbose に設定します。

    set(apiObj,processPath{1},'LogTraceDefaultLogLevel','Verbose');

  4. モデルのコードおよび ARXML ファイルを生成します。このビルドにより、ログ プロパティがファイル modelname_ExecutionManifest.arxml に生成されます。

  5. Linux 実行可能ファイルを実行する前に、JSON 実行マニフェスト ファイルと実行可能ファイルが同じフォルダーにあることを確認します。

  6. Adaptive アプリケーションの AUTOSAR ランタイム環境を次のコマンドで初期化します。

    autosar.ara.initialize

    メモ

    コマンド autosar.ara.initialize は、将来のリリースで削除される予定です。代わりに、Embedded Coder® Support Package for Linux Applications を使用してください。詳細については、Support Package Installation (Embedded Coder)を参照してください。

  7. アプリケーションを実行して、ログ メッセージがネットワークに表示されることを確認します。

メモ

モデルで ara::log ブロックを使用するには、Embedded Coder Support Package for Linux Applications 入門の例の adaptive_msg_sender モデルからコピーします。

次のコマンドを使用して、ara::log ブロックを含むモデル例を開きます。

openExample("adaptive_msg_sender");

参考

関連するトピック