2016-09-30 2 views
0

プロジェクトをKlocworkで実行しており、ビルドが完了した後にKlocwork結果が生成されます。結果を得るために、Klocworkポータルにアクセスするたびに、新しい問題やトータルの問題を探す必要があります。代わりに、ビルドが成功したときに自動的にKlocworkの結果から問題の総数を取得するためのAPIまたはスクリプトが必要です。Klocworkからの合計エラー数を自動的に取得する方法

これを達成する方法はありますか? 1つの方法は、ポータルページのソースをhtmlとして表示し、必要な結果を得ることです。しかし、私はよりよい解決策があるかもしれないと思います。

これを達成するのに助けてくれる人はいますか?

ありがとうございます。

答えて

0

私はsimilar question over hereと回答しました。 KlocworkはWebAPIを持っています。このタイプの情報は、お好みのスクリプト言語、またはcurlなどで照会することができます。KlocworkはWebAPIです。 APIドキュメントは、Klocworkサーバーのhttp:// klocwork_server_hostポート/review/api(http://localhost:8080/review/apiなど)でも提供されています。

クエリ:

curl --data "action=search&user=my_account&project=my_project&query=build:build_1 status:Analyze state:New,Existing&ltoken=xxxx" http://localhost:8080/review/api 

は、開いているすべてのリストが返されます(状態を新既存)、非引用という名前のビルドで見つかった問題(ステータスの分析)BUILD_1プロジェクトmy_project

検索アクションでクエリ文字列で使用できるキーワードのリストについては、Searching in Klocwork Reviewを参照してください。 (

curl --data "action=report&user=my_account&project=my_project&build:build_1&x=Category&y=Component&filterQuery=status:Analyze state:New,Existing&ltoken=xxxx" http://localhost:8080/review/api 

チェッカーカテゴリによってバック欠陥の数の要約を返します。

あなただけの欠陥の数の要約の代わりに、全体のリストを取得したい場合は、レポートアクションを使用することができます分類法)とコンポーネント。出力例は以下である:

{"rows":[{"id":1,"name":"C and C++"},{"id":3,"name":"MISRA C"},{"id":4,"name":"MISRA C++"}],"columns":[{"id":5,"name":"System Model"}],"data":[[122],[354],[890]],"warnings":[]} 

かわり重症度および状態によって、例えば、問題の異なる故障を生成するために、xおよびy軸のパラメータを変更することができる:

curl --data "action=report&user=my_account&project=my_project&build:build_3&x=Severity&y=State&filterQuery=state:New,Existing,Fixed&ltoken=xxxx" http://localhost:8080/review/api 

出力:

{"rows":[{"id":1,"name":"Critical"},{"id":2,"name":"Error"},{"id":3,"name":"Warning"},{"id":4,"name":"Review"}],"columns":[{"id":-1,"name":"Existing"},{"id":-1,"name":"Fixed"},{"id":-1,"name":"New"}],"data":[[10,5,2],[20,6,1],[45,11,3],[1112,78,23]],"warnings":[]} 

WebAPI cookbook documentationには、レポートアクションとともにpythonを使用し、応答を処理してフォーマットする例があります。

関連する問題