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

2. 生のKubernetes Auditログからメトリクスにディメンションを追加するには、パイプライン用に作成した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}Note
SPL2クエリの dimensions フィールドを使用して、生のイベントからのディメンションをSplunk Observability Cloudに送信されるメトリクスに追加できます。この場合、イベントのレスポンスステータス、名前空間、Kubernetesリソース、ユーザー、およびverb(実行されたアクション)を追加しています。これらのディメンションを使用して、より詳細なダッシュボードとアラートを作成できます。
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}
| into $metrics_destination
]
| eval index = "kube_logs"
| into $destination;3. 右上隅の Preview ボタン

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

5. 右上隅の Save pipeline ボタン

Note
このパイプラインはすでにアクティブであるため、行った変更はすぐに有効になります。追加したディメンションを使用して、メトリクスは複数のメトリクス時系列に分割されるはずです。
次のステップでは、Kubernetes Auditイベントからの異なるディメンションを使用して可視化を作成します。
