EN JP CN

Klocwork Static Code Analysis での検索

Klocwork Static Code Analysis での検索

Klocwork Static Code Analysis での検索

Klocwork Static Code Analysis での検索

この記事では、Klocwork Static Code Analysis で検出された指摘の検索方法を説明します。また、サポートされている検索キーワードのリストも説明します。

まず、指摘リストにアクセスする必要があります。

  1. Static Code Analysis にログインします (まだログインしていない場合)。
    現在の Klocwork サーバーのホストとポートについて、パーミッションを持つプロジェクトのリストが表示されます。
  2. リスト内のプロジェクトを開くには、指摘の [新規] または [未解決] の指摘リンクをクリックします。

指摘リストが表示され、現在の検索クエリが示されます。

ビューにより検索結果が変わります

現在のビューが検索結果に影響します。すべての重要度、カテゴリ、モジュールの指摘を含めるには、*default* のビューを使用します。

検索リスト

検索リストには、役立つ検索データが事前に入力されています。Klocwork Static Code Analysisユーザーのテキスト検索活動の履歴を保持しています。 このため、面倒な検索クエリを省略できます。テキストフィールドに入力されたテキストはすべて検索履歴に保持されますが、そのデータを永久に保存するまでは、名前はリストに淡色表示されます。失敗したクエリと 255 文字記号よりも長いクエリは保存されません。

左側のアイコンをクリックすると、検索に基づいてレポートをすぐに生成できます。

キーワードまたは全文検索の使用

キーワード、全文検索、またはその組み合わせを使用できます。全文検索は、エンティティ名、ファイル パス、指摘のコメント、指摘コード、指摘メッセージ、オーナー名、および Klocwork Static Code Analysis が統合されているバグ追跡システムのバグ ID に適用されます。キーワード検索または全文検索では大文字と小文字は区別されません。

ヒント:

  • キーワードに続くコロンの後にスペースを挿入しないでください。
  • 1 つのキーワードに対する複数の値はカンマで、複数のキーワードはスペースで区切る必要があります。たとえば、次のようになります。
    code:cmp.obj,cmp.str file:cruise,outsinks owner:jlee
    たとえば、次のように入力します。
    file:foo.c moo.c noo.c
    検索エンジンは foo.c に一致するファイルを探して、次に、エンティティ名、ファイル パス、指摘コメント、指摘コード、およびオーナー名で moo.c とnoo.c に対する全文検索を実行します。

サポートされているキーワード

次の目的で使用できるキーワードのリストを次に示します。

  • 指摘の検索
  • ビューの作成または更新
  • 検索のための 'query' パラメーター、Klocwork Web API の create_view および update_view アクション

指摘の検索またはビューの作成を行うときに、認識されないキーワードを入力すると、警告が表示されます。

キーワード 形式
build (ビューではサポートされていない)build:<build_name or build_number>
注: 一度に検索できるのは、1 つのビルドだけです。許容されるその他の構文:
  • build:'123' - サブストリング '123' を含むビルドを検索する
  • build:+123 - 名前が 123 であるビルドを検索する
  • build:+'123string' - 名前が '123string' に等しいビルドを検索する
ヒント: state:Fixed を指定して build:any キーワードを使用すると、以前のビルドで修正された指摘を検索できます。たとえば、以前のビルドで修正された 'FNH.MUST' 指摘を検索するには、build:any state:Fixed FNH.MUST を検索します。
build:build_2 or build:beta
bugIdbugId:<ID_number>
注: このキーワードを使用するには、Static Code Analysisをバグ トラッカーと統合する必要があります。詳細については、バグ追跡と Static Code Analysis の統合を参照してください。
bugId:15
categorycategory:<issue_category>,<issue_category>...category: buffer overflow
citedcited:'<time1>'-'<time2>'
注: 許容される時刻の形式は、'yyyy-mm-dd hh:mm:ss' または 'yyyy-mm-dd' です。許容されるその他の構文:
  • cited:<date> - 指定した日のステータス変更を検索します
  • cited:'<date>'-'now' - 指定日から現在の日付までのステータス変更を検索します
  • cited:today - 直前の 24 時間以内に行われたすべてのステータス変更を検索します
  • cited:week - 直前の 7 日以内に行われたすべてのステータス変更を検索します
  • cited および citedby キーワードは指摘にのみ該当します。使用するには grouping:off を有効にする必要があります。
cited:'2011-10-24 07:45:30'-'2011-11-24 21:30:00' cited:2011-11-24 cited:'2011-11-24'-'now' cited:today cited:week
citedbycitedby:<user_name>citedby:jsmith
コードcode:<issue_code>,<issue_code>...code:NPD.GEN.MUST, npd.const.call
コメントcomment:<"issue comment">
注: スペースまたは句読点を含む式には、引用符を使用します。
comment: check with bob on this issue
diff (ビューではサポートされていない)diff<build_1>,<build_2>diff:build_abc,build_def
エンティティentity:<entity_name>,<entity_name>...entity:get_file_type
filefile:<filename>,<filename>...file:htmlparser
グループ化grouping:<'on' or 'off'>grouping:off
idid:<ID_number>,<ID_number>...id:33,59,149-160
line:<line_number>,<line_number>...line:1-50,233
メッセージmessage:<message_string>message:my_var
モジュールmodule:<module_name>module:my_module
オーナーowner:<name or group>
注: ユーザー アカウント、グループ アカウント、および .sow ファイルを検索します。
owner:smith,lee,devteam
推奨 推奨: <'on' または 'off'>

推奨: <'true' または 'false'>

推奨: on
リファレンスreference:<ref_string>,<ref_string>reference:20,cast.ptr
重要度severity:<severity_name or severity_number>severity:critical,4,error, 2-4
ステート (ビューではサポートされていない)state:<state_name>,<"state name">...state:existing,fixed
ステータスstatus:<status_name>,<"statusname">status:ignore, fix in next release
分類基準taxonomy:<taxonomy_name>,<"taxonomy name">taxonomy: MISRA C , MISRA C++

除外するアイテム (-)

検索条件 (キーワードまたはテキスト) の前にマイナス記号を付けると、指定した条件からその指摘事項が除外されます。たとえば、次のようになります。

-code:abr -ANTLRParser

このクエリでは、エンティティ名、パス、コメント、コード、およびオーナーにコード ’ABR’ と"ANTLRParser" を持つすべての指摘が結果から除外されます。

ステートキーワードにマイナス記号を付けることはできません。

注: キーワードの前には、プラス記号ではなく、マイナス記号を付けることができます。例:-code:abr は使用できますが、+code:abr は使用できません。これにより、完全一致するアイテムを除外できます。例:-code:+NPD.UTIL

語句検索 ("")

二重引用符を使用して、スペースまたは句読点を含んでいる語句または式を示します。たとえば、次のようになります。

comment:"needs more research"

完全一致 (+)

全文検索で完全一致が必要なことを示すには、プラス記号を使用します。例:

file:+htmlparser

注: キーワードの前には、プラス記号ではなく、マイナス記号を付けることができます。例:-code:abr は使用できますが、+code:abr は使用できません。

検索結果のクリア

検索結果をクリアするには、テキストフィールドをクリアして、[検索] をクリックします。

OR 演算子

デフォルト検索の動作では、すべてのキーワードまたはテキストを考慮し、すべての条件に一致する指摘をリストします。OR または | を使用してこの動作をオーバーライドします。このキーワードは Klocwork Code Review でのみサポートされています。たとえば、次のようになります。

PR2777 OR PR2778

このクエリで、PR2777 とPR2778 に関連するアイテムが返されます。

想定している結果が表示されない場合

選択しているビューをチェックしてください。デフォルトのビューに切り替えてみてください。