パイプラインの更新とメトリクスの可視化
Ingest Pipeline の更新
演習: Ingest Pipeline の更新
1. 前のステップで作成した Ingest Pipeline の設定ページに戻ります。

2. 生の Kubernetes 監査ログからメトリクスにディメンションを追加するために、パイプライン用に作成した SPL2 クエリの logs_to_metrics 部分を以下の内容に置き換えます
Note
name="k8s_audit_UNIQUE_FIELD")を、元のパイプラインで指定した名前に必ず更新してください| logs_to_metrics name="k8s_audit_UNIQUE_FIELD" metrictype="counter" value=1 time=_time dimensions={"level": _raw.level, "response_status": _raw.responseStatus.code, "namespace": _raw.objectRef.namespace, "resource": _raw.objectRef.resource, "user": _raw.user.username, "action": _raw.verb, "auditID": _raw.auditID}Note
SPL2 クエリの dimensions フィールドを使用することで、生のイベントから Splunk Observability Cloud に送信されるメトリクスにディメンションを追加できます。この例では、イベントのレスポンスステータス、名前空間、Kubernetes リソース、ユーザー、および動詞(実行されたアクション)を追加しています。これらのディメンションを使用して、より詳細なダッシュボードやアラートを作成できます。
サービス間で共通のタグを追加することを検討してください。これにより、Splunk Observability Cloud のコンテキスト伝播と関連コンテンツを活用できます。
更新後のパイプラインは以下のようになります
/*A valid SPL2 statement for a pipeline must start with "$pipeline", and include "from $source" and "into $destination".*/
/* Import logs_to_metrics */
import logs_to_metrics from /splunk/ingest/commands
$pipeline =
| from $source
| thru [
//define the metric name, type, and value for the Kubernetes Events
//
// REPLACE UNIQUE_FIELD WITH YOUR INITIALS
//
| logs_to_metrics name="k8s_audit_UNIQUE_FIELD" metrictype="counter" value=1 time=_time dimensions={"level": _raw.level, "response_status": _raw.responseStatus.code, "namespace": _raw.objectRef.namespace, "resource": _raw.objectRef.resource, "user": _raw.user.username, "action": _raw.verb, "auditID": _raw.auditID}
| into $metrics_destination
]
| eval index = "kube_logs"
| into $destination;3. 右上隅にある Preview ボタン

4. プレビューテーブルの dimensions 列にディメンションが表示されていることを確認します。テーブルのセルをクリックすると、dimensions オブジェクト全体を表示できます。

5. 右上隅にある Save pipeline ボタン

Note
このパイプラインはすでにアクティブであるため、変更は即座に反映されます。メトリクスは、追加したディメンションを使用して複数のメトリクスタイムシリーズに分割されます。
次のステップでは、Kubernetes 監査イベントのさまざまなディメンションを使用してビジュアライゼーションを作成します。
