sonar-enable-logger-batch
入力レコードで渡された guid フィールド値に該当するロガーを一括で有効化します。run オプションを指定しない場合は実際に有効化せず、対象ロガーの存在有無だけを事前に確認できます。
コマンドプロパティ
| 項目 | 説明 |
|---|---|
| コマンドタイプ | 加工クエリ |
| 必要な権限 | 管理者 |
| ライセンス使用量 | 該当なし |
| 並列実行 | 非対応 |
| 分散実行 | データノードで実行(mapper) |
構文
... | sonar-enable-logger-batch [run=BOOL]
オプション
run=BOOLtを指定した場合のみ実際にロガー有効化APIを呼び出します(デフォルト:f)。指定しない、またはfの場合は対象ロガーの存在有無のみを確認し、実際には有効化しないドライランとして動作します。
入力フィールド
| フィールド | タイプ | 必須/任意 | 説明 |
|---|---|---|---|
| guid | 文字列 | 必須 | 有効化するロガーのGUID |
出力フィールド
入力レコードのすべてのフィールドをそのまま渡し、処理結果に応じて次のフィールドが追加されます。
| フィールド | タイプ | 説明 |
|---|---|---|
| status | 文字列 | 処理結果。success または failure。成功時には run=t の場合にのみ追加されます |
| _error | 文字列 | エラーメッセージ。エラーが発生した場合にのみ追加されます |
エラーコード
パースエラー
| エラーコード | メッセージ | 説明 |
|---|---|---|
| 300143 | No permission to enable loggers | 管理者権限のないアカウントで実行した場合 |
ランタイムエラー
| エラーコード | メッセージ | 説明 | 後処理動作 |
|---|---|---|---|
| - | Invalid UUID string: [value] | guid フィールド値が有効なGUID形式でない場合 | クエリの実行を中断する |
説明
sonar-enable-logger-batch コマンドは入力レコードごとに guid フィールド値で対象ロガーを照会した後に処理します。
guidフィールドがない場合は_errorフィールドにguid field is requiredメッセージを追加して渡します。この際run=tであればstatusフィールドもfailureに設定し、runを指定していなければstatusフィールドは追加しません。guidに該当するロガーが存在しない場合はrunオプションの値に関係なく_errorとstatus=failureを一緒に設定します。- 対象ロガーが存在し
run=tであれば実際に有効化APIを呼び出します。呼び出しに失敗すると_errorに失敗原因を記録しstatus=failureに設定し、成功するとstatus=successに設定します。 - 対象ロガーが存在し
run=tでない場合(デフォルト)はAPIを呼び出さず、入力レコードを変更せずそのまま渡します(ドライラン)。
guid フィールド値がGUID形式でない場合、個別レコードのエラーとして処理されずクエリの実行自体が中断されるため、事前に値の形式を検証することをお勧めします。
使用例
-
有効化対象を事前に確認(ドライラン)
json "[{'guid': '550e8400-e29b-41d4-a716-446655440000'}]" | sonar-enable-logger-batch実際には有効化せず、対象ロガーの存在有無のみを確認します。
-
実際にロガーを有効化
json "[{'guid': '550e8400-e29b-41d4-a716-446655440000'}]" | sonar-enable-logger-batch run=t -
無効化されたロガーを照会して一括有効化
sonar-loggers | search enabled == false | sonar-enable-logger-batch run=t | fields guid, name, status, _error現在無効化されているロガーをすべて照会した後、一括で有効化して処理結果を確認します。
変更履歴
sonar-enable-logger-batch コマンドはSonar 4.0.2609.0バージョンから利用可能です。Experimental アプリが提供していたコマンドをSonarコアに内蔵したものです。内蔵されていないバージョンでは、Experimental アプリをインストールして使用できます。 Experimental アプリでは sonar-enable-loggers という名前で提供されます。