C-STAT出力をJenkinsで視覚化

テクニカル・ノート 210616

アーキテクチャ:

All

コンポーネント:

general

更新日:

2021/09/27 7:12

はじめに 

C-STATのメッセージは、コマンドラインからicstatを実行するか、Embedded Workbench IDEで検索することができます。 

しかし、前回の解析と比較して、どれが「新規メッセージで、どれが「修正済み」または「同一のメッセージなのか、判別が難しい場合があります。 

解説 

このテクニカルノートでは、Warnings Next Generationと呼ばれるJenkinsのプラグインの使い方を説明します。Jenkinsプラグインを使うことにより、「新規」、「修正済み」、「同一」メッセージについて、前回の解析結果との比較が可能になります。 

  • Jenkinsプラグインは多くの静的解析ツールに対応しています。 
  • このプラグインでは、C-STATの実行は行わず、結果の表示のみを行います。 
  • ソースファイルのメッセージは、ブラウザで直接、ソート、フィルタ、検証することもできます。 

C-STAT出力の生成 

Jenkins PipelineスクリプトでC-STATを最も簡単に実行するにはまず、 IarBuild(バージョン9.x以降)からコマンドファイルを生成します。 

IarBuild <projectfile> -cstat_cmds <config> 

このコマンドによって、cstatcommands.txtファイルが<config>/C-STATディレクトリに置かれます。 

次に以下のようにicstatを実行してください。 

icstat --db cstat.db commands <config>/C-STAT/cstatcommands.txt <options> 

Jenkinsプラグインによる解析を可能にするため、icstatの出力はlogファイルに保存することをお勧めします 

Warnings Next Generationプラグインの使用 

続いてプラグインを実行します。 

recordIssues tools: [iarCstat(pattern: "<logfile>.txt")] 

他にも、プラグインの公式ドキュメント( こちらにプラグインの使用例が記載されています 

各プラグインコマンドは、Jenkinsのジョブを表示すると有効になるPipeline Syntaxメニューから生成することができます。Sample Stepとしてrecord Issuesを選択、ToolとしてIAR C-STATを選択して、 Generate Pipeline Scriptをクリックすると、選択したオプションを反映したコマンドを生成できます。 

:このプラグインでは同一メッセージのフィルタリングが行われます。したがって通常、プラグインからのメッセージ数は、C-STAT内のメッセージ数と異なります。これは、C-STATでは、ヘッダメッセージが、そのヘッダを含むすべてのソースファイルに伝搬されるために起こります。 

まとめ 

JenkinsWarnings Next Generationプラグインを使ってC-STATの解析結果を表示できます。これにより、メッセージ数の傾向を判断することができます。 

全ての製品名は、それぞれの所有者の商標または登録商標です 

申し訳ございませんが、弊社サイトではInternet Explorerをサポートしていません。サイトをより快適にご利用いただくために、Chrome、Edge、Firefoxなどの最新ブラウザをお使いいただきますようお願いいたします。