

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Splunk データソースへの接続
<a name="splunk-datasource"></a>

**注記**  
このデータソースは、Grafana Enterprise 専用です。詳細については、「[Enterprise プラグインへのアクセス許可の管理](upgrade-to-enterprise-plugins.md)」を参照してください。  
さらに、バージョン 9 以降をサポートするワークスペースでは、このデータソースに適切なプラグインをインストール必要がある可能性があります。詳細については、「[プラグインを使用したワークスペースの拡張](grafana-plugins.md)」を参照してください。

## 設定
<a name="splunk-configuration-3"></a>

### データソースの設定
<a name="splunk-data-source-config"></a>

 データソースを設定するときは、URL フィールドが `https` を使用して、設定された Splunk ポートを指していることを確認します。デフォルトの Splunk API ポイントは 8000 (デフォルトのウェブ UI ポート) ではなく 8089 です。*基本認証*を有効にして Splunk のユーザー名とパスワードを指定します。

#### ブラウザ (直接) アクセスモードおよび CORS
<a name="splunk-browser-direct-access-mode-and-cors"></a>

 Amazon Managed Grafana は、Splunk データソースのブラウザ直接アクセスをサポートしていません。

### 高度なオプション
<a name="splunk-advanced-options"></a>

#### ストリームモード
<a name="stream-mode"></a>

 検索結果が利用可能になったときに取得する場合は、ストリームモードを有効にします。これは実験的機能です。実際に必要になるまで有効にしないでください。

#### 結果のポーリング
<a name="splunk-poll-result"></a>

 検索を実行してから定期的に結果をチェックします。このオプションは内部で、 `exec_mode` を `normal` に設定した `search/jobs` API コールを実行します。この場合、API リクエストはジョブ SID を返し、Grafana はジョブ結果を取得するためにジョブステータスを随時チェックします。このオプションはスロークエリに役立ちます。デフォルトではこのオプションが無効になっており、Grafana は `oneshot` を `exec_mode` に設定します。これにより同じ API コールで検索結果を返すことができます。`search/jobs` の API エンドポイントの詳細については、[Splunk のドキュメント](https://docs.splunk.com/Documentation/Splunk/latest/RESTREF/RESTsearch#search.2Fjobs)を参照してください。

#### 検索ポーリング間隔
<a name="splunk-search-polling-interval"></a>

 このオプションでは、Amazon Managed Grafana が検索結果のために splunk をポーリングする頻度を調整できます。[最小、最大] 間隔からランダムに選択する次のポーリングの時間。大量の検索を実行する場合は、これらの値を増やすことは合理的です。ヒント: 検索ジョブの実行に時間がかかる場合は*最小*、多くの並列検索 (Grafana ダッシュボードに splunk メトリクスが多い) を実行する場合は*最大*を増やします。デフォルトは [500、3000] ミリ秒間隔です。

#### 自動キャンセル
<a name="auto-cancel"></a>

 指定した場合、この数秒間非アクティブ状態が続くとジョブは自動的にキャンセルされます (0 では自動キャンセルしません)。デフォルトは 30 です。

#### ステータスバケット
<a name="status-buckets"></a>

 生成する大半のステータスバケットです。0 ではタイムライン情報が生成されません。デフォルトは 300 です。

#### フィールド検索モード
<a name="splunk-fields-search-mode"></a>

 ビジュアルクエリエディタを使用すると、データソースは選択したソースタイプで使用できるフィールドのリストを取得しようとします。
+  クイック - プレビューで最初に利用可能な結果を使用 
+  フル - ジョブが終了するのを待って完全な結果を取得します。

#### デフォルトの最も早い時刻
<a name="default-earliest-time"></a>

 一部の検索ではダッシュボードの時間範囲を使用できません (テンプレート変数クエリなど)。このオプションは、Splunk を遅くする可能性のある、全時間検索を防ぐのに役立ちます。構文は整数で時間単位は `[+|-]<time_integer><time_unit>` です。例: `-1w`。[時間単位](https://docs.splunk.com/Documentation/Splunk/latest/Search/Specifytimemodifiersinyoursearch)は `s, m, h, d, w, mon, q, y` にできます。

#### 変数検索モード
<a name="splunk-variables-search-mode"></a>

 テンプレート変数クエリの検索モードです。使用できる値: 
+  高速 - イベント検索でフィールド検出をオフにします。統計検索にはイベントまたはフィールドデータがありません。
+  スマート - イベント検索でフィールド検出をオンにします。統計検索にはイベントまたはフィールドデータがありません。
+  詳細 - すべてのイベントおよびフィールドデータ。

## 使用方法
<a name="splunk-usage-5"></a>

### クエリエディタ
<a name="splunk-query-editor-2"></a>

#### エディタモード
<a name="splunk-editor-modes"></a>

 クエリエディタは、未加工とビジュアルの 2 つのモードをサポートしています。これらのモードを切り替えるには、エディタの右側にあるハンバーガーアイコンを選択して*エディタモードの切り替え*を選択します。

#### 未加工モード
<a name="raw-mode"></a>

 次のコード例に示すように、時系列データに `timechart` コマンドを使用します。

```
index=os sourcetype=cpu | timechart span=1m avg(pctSystem) as system, avg(pctUser) as user, avg(pctIowait) as iowait
index=os sourcetype=ps | timechart span=1m limit=5 useother=false avg(cpu_load_percent) by process_name
```

 次の例に示すように、クエリはテンプレート変数をサポートしています。

```
sourcetype=cpu | timechart span=1m avg($cpu)
```

 Grafana は時系列指向のアプリケーションであり、検索では時系列データ (タイムスタンプと値) または単一値を返すことに注意してください。[timechart](https://docs.splunk.com/Documentation/Splunk/latest/SearchReference/Timechart) コマンドと検索例については、公式の「[Splunk 検索リファレンス](https://docs.splunk.com/Documentation/Splunk/latest/SearchReference/WhatsInThisManual)」を参照してください。

#### Splunk メトリクスおよび `mstats`
<a name="splunk-metrics-and-mstats"></a>

 Splunk 7.x にはメトリクスを分析するための `mstats` コマンドが用意されています。`mstats`　でグラフを適切に機能させるには、`timeseries` コマンドと組み合わせて `prestats=t` オプションを設定する必要があります。

```
Deprecated syntax:
| mstats prestats=t avg(_value) AS Value WHERE index="collectd" metric_name="disk.disk_ops.read" OR metric_name="disk.disk_ops.write" by metric_name span=1m
| timechart avg(_value) span=1m by metric_name

Actual:
| mstats prestats=t avg(disk.disk_ops.read) avg(disk.disk_ops.write) WHERE index="collectd" by metric_name span=1m
| timechart avg(disk.disk_ops.read) avg(disk.disk_ops.write) span=1m
```

 `mstats` コマンドの詳細については、「[Splunk 検索リファレンス](https://docs.splunk.com/Documentation/Splunk/latest/SearchReference/Mstats)」を参照してください。

#### フォーマット形式
<a name="format-as"></a>

 サポートされている結果形式モードには、*時系列* (デフォルト) と*テーブル*の 2 つがあります。集計データを表示するときにテーブルパネルで使用するのに適した、テーブルモード。これは未加工イベント (選択したすべてのフィールドを返す) と `stats` 検索機能で動作し、テーブルのようなデータを返します。例: 

```
index="os" sourcetype="vmstat" | fields host, memUsedMB
index="os" sourcetype="ps" | stats avg(PercentProcessorTime) as "CPU time", latest(process_name) as "Process", avg(UsedBytes) as "Memory" by PID
```

 その結果は Splunk UI の*統計*タブに似ています。

 `stats` 機能の使用方法の詳細については、「[Splunk 検索リファレンス](https://docs.splunk.com/Documentation/Splunk/latest/SearchReference/Stats)」を参照してください。

#### ビジュアルモード
<a name="splunk-visual-mode"></a>

このモードでは段階的に検索を作成できます。このモードでは `timechart` splunk 検索が作成されることに注意してください。インデックス、ソースタイプ、メトリクスを選択して、必要に応じてフィールドごとの分割を設定します。

##### メトリクス
<a name="splunk-metric"></a>

 メトリクス行の右側にある*プラス*ボタンを選択すると、検索する複数のメトリクスを追加できます。メトリクスエディタには頻繁に使用される集計のリストが含まれていますが、ここでは他の関数を指定できます。agg セグメント (デフォルトで `avg`) を選択して必要なものを入力します。ドロップダウンリストから関心のあるフィールドを選択して (または入力)、必要に応じてエイリアスを設定します。

##### by と where で分割
<a name="split-by-and-where"></a>

 [Split by] フィールドを設定して*[時系列]*モードを使用すると、エディタが使用可能になります。*プラス*を選択して、演算子、集計、値を選択します。例えば、*Where avg in top 10* 二様に選択します。この *Where* 句は *Split by* の一部であることに注意してください。詳細については、[timechart のドキュメント](https://docs.splunk.com/Documentation/Splunk/latest/SearchReference/timechart#where_clause)を参照してください。

#### オプション
<a name="splunk-options"></a>

 デフォルトの timechart オプションを変更するには、最後の行の **[オプション]** を選択します。

これらのオプションの詳細については、[timechart のドキュメント](https://docs.splunk.com/Documentation/Splunk/latest/SearchReference/timechart)を参照してください。

#### レンダリングされた splunk 検索
<a name="rendered-splunk-search"></a>

 左のターゲット文字を選択するとエディタが折りたたまれ、レンダリングされた splunk 検索が表示されます。

### ‏注釈
<a name="splunk-annotations-2"></a>

Splunk アラートまたはイベントをグラフに表示する場合は注釈を使用します。注釈は事前定義された Splunk アラートまたは通常の splunk 検索のいずれかです。

#### Splunk アラート
<a name="splunk-alert"></a>

 アラート名を指定、またはフィールドを空白のままにして発生したすべてのアラートを取得します。テンプレート変数がサポートされます。

#### Splunk 検索
<a name="splunk-search"></a>

 次の例のように、スプランク検索を使用して必要なイベントを取得します。

```
index=os sourcetype=iostat | where total_ops > 400
index=os sourcetype=iostat | where total_ops > $io_threshold
```

 テンプレート変数がサポートされます。

 フィールド値を注釈テキストとして使用する場合は、**テキストとしてのイベントフィールド**オプションが適しています。次の例は、ログのエラーメッセージテキストを示しています。

```
Event field as text: _raw
Regex: WirelessRadioManagerd\[\d*\]: (.*)
```

 Regex ではメッセージの一部を抽出できます。

### テンプレート変数
<a name="splunk-template-variables"></a>

 テンプレート変数機能は `stats` コマンドなどで値のリストを返す Splunk クエリをサポートします。

```
index=os sourcetype="iostat" | stats values(Device)
```

 このクエリは `iostat` ソースから `Device` フィールド値のリストを返します。これらのデバイス名は、時系列クエリまたは注釈に使用できます。

 Grafana で使用できる変数クエリには 2 つのタイプがあります。1 つ目は単純なクエリで (前述のとおり)、値のリストを返します。2 番目のタイプはキー/値変数を作成できるクエリです。クエリは、 `_text` と `_value` という名前の 2 つの列を返します。`_text` 列の値は一意である必要があります (一意でない場合は、最初の値が使用されます)。ドロップダウンリストのオプションにはテキストと値があるため、わかりやすい名前のテキストとして、ID を値として使用できます。

 例えば、この検索では列 `Name` (Docker コンテナ名) と `Id` (コンテナ ID) を含むテーブルが返されます。

```
source=docker_inspect | stats count latest(Name) as Name by Id | table Name, Id
```

 コンテナ名を変数の可視値として使用し、ID を実際の値として使用するには、次の例のようにクエリを変更する必要があります。

```
source=docker_inspect | stats count latest(Name) as Name by Id | table Name, Id | rename Name as "_text", Id as "_value"
```

#### 複数値の変数
<a name="splunk-multi-value-variables"></a>

 クエリでは複数値の変数を使用できます。補間検索は変数使用コンテキストによって異なります。プラグインがサポートしているコンテキストは多数あります。`foo` と `bar` の値を選択した変数 `$container` があるとします。
+  `search` コマンド用基本フィルター 

  ```
  source=docker_stats $container
  =>
  source=docker_stats (foo OR bar)
  ```
+  フィールド値フィルター 

  ```
  source=docker_stats container_name=$container
  =>
  source=docker_stats (container_name=foo OR container_name=bar)
  ```
+  `IN` 演算子と `in()` 関数を使用したフィールド値フィルター 

  ```
  source=docker_stats container_name IN ($container)
  =>
  source=docker_stats container_name IN (foo, bar)
  
  source=docker_stats | where container_name in($container)
  =>
  source=docker_stats | where container_name in(foo, bar)
  ```

#### 複数値の変数と引用符
<a name="multi-value-variables-and-quotes"></a>

 変数が引用符で囲まれている場合 (二重または単一の両方)、次の例のように、その値も引用符で囲まれます。

```
source=docker_stats container_name="$container"
=>
source=docker_stats (container_name="foo" OR container_name="bar")

source=docker_stats container_name='$container'
=>
source=docker_stats (container_name='foo' OR container_name='bar')
```