xmlfile
XMLファイルからデータを取得します。
コマンドプロパティ
| 項目 | 説明 |
|---|---|
| コマンドタイプ | ドライバークエリ |
| 必要な権限 | クラスター管理者 |
| ライセンス使用量 | 集計あり |
| 並列実行 | 非対応 |
| 分散実行 | 非対応 |
構文
xmlfile [cs=STR] [xpath=STR] PATH
オプション
cs=STR- XMLファイルの文字エンコーディング(デフォルト:
utf-8)。charsetオプションでも指定できます。 xpath=STR- XMLノードを選択するXPath式。指定しない場合はXML全体を1件のレコードとして返します。
対象
PATH- XMLファイルのパス。ワイルドカード(
*)を使用できます。
出力フィールド
| フィールド | 型 | 説明 |
|---|---|---|
| (XML要素) | 自動 | XML要素の名前と値にマッピングされたフィールド |
| _file | string | 元のファイル名 |
エラーコード
パースエラー
| エラーコード | メッセージ | 説明 |
|---|---|---|
| 13100 | - | ファイルパスが指定されていない場合 |
| 13102 | - | ファイルが存在しないか読み取れない場合 |
| 13101 | - | 親ディレクトリが存在しないか読み取れない場合 |
| 13103 | - | XPath式をコンパイルできない場合 |
| 13104 | - | XMLファイルが10MB以上の場合 |
| 13105 | - | ファイルへのアクセスが拒否された場合 |
説明
xmlfile コマンドはXMLファイルを解析し、各要素をレコードとして返します。xpath オプションを使用すると特定のノードのみを選択して取得できます。
10MB以上のXMLファイルは処理できません。ワイルドカードで複数のファイルを指定した場合、10MB以上またはエラーが発生したファイルは警告ログを残してスキップします。
BOM(Byte Order Mark)が含まれるファイルを自動的に認識します。
このコマンドは4.0.2511.0バージョンからクラスター管理者権限が必要で、アクセス可能なファイルパスが制限されます。詳細はファイルアクセス制限を参照してください。
使用例
各使用例のファイルパスは ALLOWED_FILE_SCAN_PATHS 設定に含まれていると仮定します。
-
XMLファイル全体を取得
xmlfile /opt/logpresso/data/config.xmlXMLファイルの全データを取得します。
-
XPathで特定のノードを選択
xmlfile xpath="//item" /opt/logpresso/data/catalog.xmlXPath式を使用してすべての
itemノードを取得します。
互換性
xmlfile コマンドはSonar 4.0以前のバージョンから提供されています。4.0.2511.0バージョンからクラスター管理者権限が必要です。