Mengumpulkan log audit HashiCorp

Didukung di:

Parser ini memproses log audit HashiCorp dalam format JSON, Syslog, atau gabungan. Fungsi ini mengekstrak kolom, melakukan penguraian Grok dan KV untuk pesan jenis standar dan "runner", menangani payload JSON, dan memetakan data yang diekstrak ke UDM. Parser juga mencakup penanganan error dan penghapusan log yang salah format.

Sebelum memulai

  • Pastikan Anda memiliki instance Google Security Operations.
  • Pastikan Anda memiliki Windows 2016 atau yang lebih baru atau host Linux dengan systemd.
  • Jika berjalan di balik proxy, pastikan port firewall terbuka.
  • Pastikan Anda memiliki akses dengan hak istimewa ke HCP.

Mendapatkan file autentikasi penyerapan Google SecOps

  1. Login ke konsol Google SecOps.
  2. Buka SIEM Settings > Collection Agents.
  3. Download File Autentikasi Proses Transfer.

Mendapatkan ID pelanggan Google SecOps

  1. Login ke konsol Google SecOps.
  2. Buka Setelan SIEM > Profil.
  3. Salin dan simpan ID Pelanggan dari bagian Detail Organisasi.

Menginstal Agen BindPlane

  1. Untuk penginstalan Windows, jalankan skrip berikut:
    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
  2. Untuk penginstalan Linux, jalankan skrip berikut:
    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
  3. Opsi penginstalan tambahan dapat ditemukan di panduan penginstalan ini.

Mengonfigurasi Agen BindPlane untuk menyerap Syslog dan mengirim ke Google SecOps

  1. Akses komputer tempat BindPlane diinstal.
  2. Edit file config.yaml sebagai berikut:

    receivers:
        udplog:
            # Replace the below port <54525> and IP <0.0.0.0> with your specific values
            listen_address: "0.0.0.0:54525" 
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the creds location below according the placement of the credentials file you downloaded
            creds: '{ json file for creds }'
            # Replace <customer_id> below with your actual ID that you copied
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # You can apply ingestion labels below as preferred
            ingestion_labels:
            log_type: SYSLOG
            namespace: auditd
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Mulai ulang Agen BindPlane untuk menerapkan perubahan:

    sudo systemctl restart bindplane
    

Mengaktifkan Syslog untuk HCP Vault

  1. Login ke Portal HCP.
  2. Buka Cluster Vault.
  3. Pilih cluster Vault dari daftar cluster yang di-deploy.
  4. Di Ringkasan Cluster, temukan dan salin Alamat Vault (misalnya, https://vault-cluster-name.hashicorpcloud.com:8200).
  5. Buka bagian Access Details, lalu salin Root Token.

Menginstal Vault CLI

  • Untuk Linux:

    curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
    echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
    sudo apt update && sudo apt install vault
    
  • Untuk macOS (menggunakan Homebrew):

    brew tap hashicorp/tap
    brew install hashicorp/tap/vault
    
  • Untuk Windows:

    Download the executable file.
    Extract it and add the Vault binary to your system's PATH.
    
  • Verifikasi penginstalan Vault CLI dengan menjalankan:

    vault --version
    

Mengonfigurasi HCP Vault menggunakan CLI untuk mengirim log audit ke BindPlane

  1. Buka terminal atau command prompt.
  2. Tetapkan alamat server Vault menggunakan variabel lingkungan:

    export VAULT_ADDR="https://vault-cluster-name.hashicorpcloud.com:8200"
    
  3. Login ke Vault menggunakan token root:

    vault login <root-token>
    

Mengonfigurasi Jalur Syslog ke Soket Syslog Eksternal

  1. Jalankan perintah berikut untuk mengaktifkan syslog dan mengirim ke BindPlane:

    vault audit enable socket address="udp://<bindplane-ip>:<bindplane-port>" socket_type="udp" tag="vault"
    
  2. Konfirmasi konfigurasi baru:

    vault audit list
    
  3. Output akan menampilkan konfigurasi soket baru.

  4. Opsional: Otomatiskan penyiapan menggunakan Terraform:

    • Buat file konfigurasi Terraform (audit.tf):
    resource "vault_audit" "syslog" {
      type        = "syslog"
      description = "Syslog audit logs"
      options = {
        tag      = "vault"
        facility = "LOCAL0"
      }
    }
    
    resource "vault_audit" "socket" {
      type        = "socket"
      description = "Remote syslog socket"
      options = {
        address     = "udp://<syslog-server-ip>:514"
        socket_type = "udp"
        tag         = "vault"
      }
    }
    
    • Terapkan konfigurasi:
    terraform init
    terraform apply
    

Log pemecahan masalah tidak diterima

  • Pastikan server syslog dapat dijangkau:

    ping <syslog-server-ip>
    

Tabel Pemetaan UDM

Kolom Log Pemetaan UDM Logika
auth.accessor security_result.about.resource.attribute.labels.value Nilai auth.accessor dari log mentah dipetakan ke label dengan kunci "auth_accessor" di bagian security_result.about.resource.attribute.labels di UDM.
auth.client_token security_result.about.resource.attribute.labels.value Nilai auth.client_token dari log mentah dipetakan ke label dengan kunci "auth_client_token" di bagian security_result.about.resource.attribute.labels di UDM.
auth.display_name target.user.user_display_name Nilai auth.display_name dari log mentah dipetakan ke target.user.user_display_name di UDM.
auth.entity_id target.resource.product_object_id Nilai auth.entity_id dari log mentah dipetakan ke target.resource.product_object_id di UDM.
auth.metadata.account_id target.user.userid Nilai auth.metadata.account_id dari log mentah dipetakan ke target.user.userid di UDM.
auth.metadata.auth_type security_result.about.resource.attribute.labels.value Nilai auth.metadata.auth_type dari log mentah dipetakan ke label dengan kunci "auth_type" di bagian security_result.about.resource.attribute.labels di UDM.
auth.metadata.role_id security_result.about.resource.attribute.labels.value Nilai auth.metadata.role_id dari log mentah dipetakan ke label dengan kunci "role_id" di bagian security_result.about.resource.attribute.labels di UDM.
auth.metadata.role_name target.resource.attribute.roles.name Nilai auth.metadata.role_name dari log mentah dipetakan ke target.resource.attribute.roles.name di UDM.
auth.token_ttl security_result.about.resource.attribute.labels.value Nilai auth.token_ttl dari log mentah dipetakan ke label dengan kunci "auth_token_ttl" di bagian security_result.about.resource.attribute.labels di UDM.
auth.token_type security_result.about.resource.attribute.labels.value Nilai auth.token_type dari log mentah dipetakan ke label dengan kunci "auth_token_type" di bagian security_result.about.resource.attribute.labels di UDM.
cluster observer.resource.name Nilai cluster dari log mentah dipetakan ke observer.resource.name di UDM.
error security_result.description Nilai error dari log mentah dipetakan ke security_result.description di UDM.
headers.accept security_result.about.resource.attribute.labels.value Nilai headers.accept dari log mentah dipetakan ke label dengan kunci "httpHeaders accept" di bagian security_result.about.resource.attribute.labels di UDM.
headers.httpHeaders.cache-control additional.fields.value.string_value Nilai headers.httpHeaders.cache-control dari log mentah dipetakan ke kolom dengan kunci "httpHeaders cache control" di bagian additional.fields di UDM.
headers.snyk-acting-org-public-id principal.resource.attribute.labels.value Nilai headers.snyk-acting-org-public-id dari log mentah dipetakan ke label dengan kunci "snyk-acting-org-public-id" di bagian principal.resource.attribute.labels di UDM.
headers.snyk-flow-name principal.resource.attribute.labels.value Nilai headers.snyk-flow-name dari log mentah dipetakan ke label dengan kunci "snyk-flow-name" di bagian principal.resource.attribute.labels di UDM.
headers.snyk-request-id principal.resource.attribute.labels.value Nilai headers.snyk-request-id dari log mentah dipetakan ke label dengan kunci "snyk-request-id" di bagian principal.resource.attribute.labels di UDM.
headers.user-agent network.http.parsed_user_agent Nilai headers.user-agent dari log mentah diuraikan sebagai agen pengguna dan dipetakan ke network.http.parsed_user_agent di UDM.
headers.x-forwarded-host principal.hostname Nilai headers.x-forwarded-host dari log mentah dipetakan ke principal.hostname di UDM.
headers.x-forwarded-port principal.port Nilai headers.x-forwarded-port dari log mentah dipetakan ke principal.port di UDM.
headers.x-real-ip principal.ip Nilai headers.x-real-ip dari log mentah dipetakan ke principal.ip di UDM.
hostname observer.hostname Nilai hostname dari log mentah dipetakan ke observer.hostname di UDM.
httpHeaders.cf-cache-status target.resource.attribute.labels.value Nilai httpHeaders.cf-cache-status dari log mentah dipetakan ke label dengan kunci "cf-cache-status" di bagian target.resource.attribute.labels di UDM.
httpHeaders.cf-ray target.resource.attribute.labels.value Nilai httpHeaders.cf-ray dari log mentah dipetakan ke label dengan kunci "cf-ray" di bagian target.resource.attribute.labels di UDM.
httpHeaders.content-length security_result.about.resource.attribute.labels.value Nilai httpHeaders.content-length dari log mentah dipetakan ke label dengan kunci "httpHeaders Content-Length" di bagian security_result.about.resource.attribute.labels di UDM.
httpHeaders.content-type security_result.about.resource.attribute.labels.value Nilai httpHeaders.content-type dari log mentah dipetakan ke label dengan kunci "httpHeaders Content-Type" di bagian security_result.about.resource.attribute.labels di UDM.
httpHeaders.gitlab-lb target.resource.attribute.labels.value Nilai httpHeaders.gitlab-lb dari log mentah dipetakan ke label dengan kunci "gitlab-lb" di bagian target.resource.attribute.labels di UDM.
httpHeaders.gitlab-sv target.resource.attribute.labels.value Nilai httpHeaders.gitlab-sv dari log mentah dipetakan ke label dengan kunci "gitlab-sv" di bagian target.resource.attribute.labels di UDM.
httpHeaders.ratelimit-limit target.resource.attribute.labels.value Nilai httpHeaders.ratelimit-limit dari log mentah dipetakan ke label dengan kunci "ratelimit-limit" di bagian target.resource.attribute.labels di UDM.
httpHeaders.ratelimit-observed target.resource.attribute.labels.value Nilai httpHeaders.ratelimit-observed dari log mentah dipetakan ke label dengan kunci "ratelimit-observed" di bagian target.resource.attribute.labels di UDM.
httpHeaders.ratelimit-remaining target.resource.attribute.labels.value Nilai httpHeaders.ratelimit-remaining dari log mentah dipetakan ke label dengan kunci "ratelimit-remaining" di bagian target.resource.attribute.labels di UDM.
httpHeaders.ratelimit-reset target.resource.attribute.labels.value Nilai httpHeaders.ratelimit-reset dari log mentah dipetakan ke label dengan kunci "ratelimit-reset" di bagian target.resource.attribute.labels di UDM.
httpHeaders.ratelimit-resettime target.resource.attribute.labels.value Nilai httpHeaders.ratelimit-resettime dari log mentah dipetakan ke label dengan kunci "ratelimit-resettime" di bagian target.resource.attribute.labels di UDM.
httpHeaders.referrer-policy target.resource.attribute.labels.value Nilai httpHeaders.referrer-policy dari log mentah dipetakan ke label dengan kunci "referrer-policy" di bagian target.resource.attribute.labels di UDM.
httpHeaders.server target.resource.attribute.labels.value Nilai httpHeaders.server dari log mentah dipetakan ke label dengan kunci "server" di bagian target.resource.attribute.labels di UDM.
httpHeaders.x-content-type-options target.resource.attribute.labels.value Nilai httpHeaders.x-content-type-options dari log mentah dipetakan ke label dengan kunci "x-content-type-options" di bagian target.resource.attribute.labels di UDM.
httpHeaders.x-frame-options target.resource.attribute.labels.value Nilai httpHeaders.x-frame-options dari log mentah dipetakan ke label dengan kunci "x-frame-options" di bagian target.resource.attribute.labels di UDM.
httpHeaders.x-request-id target.resource.attribute.labels.value Nilai httpHeaders.x-request-id dari log mentah dipetakan ke label dengan kunci "x-request-id" di bagian target.resource.attribute.labels di UDM.
httpStatus network.http.response_code Nilai httpStatus dari log mentah dipetakan ke network.http.response_code di UDM.
httpUrl target.url Nilai httpUrl dari log mentah dipetakan ke target.url di UDM.
insertId metadata.product_log_id Nilai insertId dari log mentah dipetakan ke metadata.product_log_id di UDM.
job additional.fields.value.string_value Nilai job dari log mentah dipetakan ke kolom dengan kunci "id tugas" di bagian additional.fields di UDM.
job_status additional.fields.value.string_value Nilai job_status dari log mentah dipetakan ke kolom dengan kunci "job_status" di bagian additional.fields di UDM.
labels.compute.googleapis.com/resource_name target.resource.name Nilai labels.compute.googleapis.com/resource_name dari log mentah dipetakan ke target.resource.name di UDM.
labels.k8s-pod/app_kubernetes_io/instance target.resource.attribute.labels.value Nilai labels.k8s-pod/app_kubernetes_io/instance dari log mentah dipetakan ke label dengan kunci "Kubernetes IO Instance" di bagian target.resource.attribute.labels di UDM.
labels.k8s-pod/app_kubernetes_io/name target.resource.attribute.labels.value Nilai labels.k8s-pod/app_kubernetes_io/name dari log mentah dipetakan ke label dengan kunci "Kubernetes IO Instance Name" di bagian target.resource.attribute.labels di UDM.
labels.k8s-pod/component target.resource.attribute.labels.value Nilai labels.k8s-pod/component dari log mentah dipetakan ke label dengan kunci "component" di bagian target.resource.attribute.labels di UDM.
labels.k8s-pod/controller-revision-hash target.resource.attribute.labels.value Nilai labels.k8s-pod/controller-revision-hash dari log mentah dipetakan ke label dengan kunci "Controller Revision Hash" di bagian target.resource.attribute.labels di UDM.
labels.k8s-pod/helm_sh/chart target.resource.attribute.labels.value Nilai labels.k8s-pod/helm_sh/chart dari log mentah dipetakan ke label dengan kunci "Kubernetes IO Instance Manager SH" di bagian target.resource.attribute.labels di UDM.
labels.k8s-pod/vault-active target.resource.attribute.labels.value Nilai labels.k8s-pod/vault-active dari log mentah dipetakan ke label dengan kunci "Vault aktif" di bagian target.resource.attribute.labels di UDM.
labels.k8s-pod/vault-initialized target.resource.attribute.labels.value Nilai labels.k8s-pod/vault-initialized dari log mentah dipetakan ke label dengan kunci "Vault diinisialisasi" di bagian target.resource.attribute.labels di UDM.
labels.k8s-pod/vault-perf-standby target.resource.attribute.labels.value Nilai labels.k8s-pod/vault-perf-standby dari log mentah dipetakan ke label dengan kunci "vault perf standby" di bagian target.resource.attribute.labels di UDM.
labels.k8s-pod/vault-sealed target.resource.attribute.labels.value Nilai labels.k8s-pod/vault-sealed dari log mentah dipetakan ke label dengan kunci "Vault sealed" di bagian target.resource.attribute.labels di UDM.
labels.k8s-pod/vault-version target.resource.attribute.labels.value Nilai labels.k8s-pod/vault-version dari log mentah dipetakan ke label dengan kunci "Versi vault" di bagian target.resource.attribute.labels di UDM.
maskedToken security_result.about.resource.attribute.labels.value Nilai maskedToken dari log mentah dipetakan ke label dengan kunci "maskedToken" di bagian security_result.about.resource.attribute.labels di UDM.
method network.http.method, operation Nilai method dari log mentah dipetakan ke operation. Jika operation tidak kosong, network.application_protocol akan ditetapkan ke "HTTP". Berdasarkan nilai operation, network.http.method akan diturunkan.
msg metadata.description Nilai msg dari log mentah dipetakan ke metadata.description di UDM.
pid target.process.pid Nilai pid dari log mentah dipetakan ke target.process.pid di UDM.
request.client_token target.resource.attribute.labels.value Nilai request.client_token dari log mentah dipetakan ke label dengan kunci "request_client_token" di bagian target.resource.attribute.labels di UDM.
request.client_token_accessor target.resource.attribute.labels.value Nilai request.client_token_accessor dari log mentah dipetakan ke label dengan kunci "request_client_token_accessor" di bagian target.resource.attribute.labels di UDM.
request.data.role_id target.resource.attribute.labels.value Nilai request.data.role_id dari log mentah dipetakan ke label dengan kunci "request_data_role_id" di bagian target.resource.attribute.labels di UDM.
request.data.secret_id target.resource.attribute.labels.value Nilai request.data.secret_id dari log mentah dipetakan ke label dengan kunci "request_data_secret_id" di bagian target.resource.attribute.labels di UDM.
request.id network.session_id Nilai request.id dari log mentah dipetakan ke network.session_id di UDM.
request.mount_accessor target.resource.attribute.labels.value Nilai request.mount_accessor dari log mentah dipetakan ke label dengan kunci "request_mount_accessor" di bagian target.resource.attribute.labels di UDM.
request.mount_type target.resource.attribute.labels.value Nilai request.mount_type dari log mentah dipetakan ke label dengan kunci "request_mount_type" di bagian target.resource.attribute.labels di UDM.
request.namespace.id target.namespace Nilai request.namespace.id dari log mentah dipetakan ke target.namespace di UDM.
request.operation target.resource.attribute.labels.value, network.http.method, operation Nilai request.operation dari log mentah dipetakan ke operation. Jika operation tidak kosong, network.application_protocol akan ditetapkan ke "HTTP". Berdasarkan nilai operation, network.http.method akan diturunkan. Nilai request.operation juga dipetakan ke label dengan "kemampuan" kunci di bagian target.resource.attribute.labels di UDM.
request.path target.url Nilai request.path dari log mentah dipetakan ke target.url di UDM.
request.remote_address principal.ip Nilai request.remote_address dari log mentah dipetakan ke principal.ip di UDM.
request.remote_port principal.port Nilai request.remote_port dari log mentah dipetakan ke principal.port di UDM.
request.wrap_ttl target.resource.attribute.labels.value Nilai request.wrap_ttl dari log mentah dipetakan ke label dengan kunci "request_wrap_ttl" di bagian target.resource.attribute.labels di UDM.
resource.labels.container_name additional.fields.value.string_value Nilai resource.labels.container_name dari log mentah dipetakan ke kolom dengan kunci "container name" di bagian additional.fields di UDM.
resource.labels.location target.location.name Nilai resource.labels.location dari log mentah dipetakan ke target.location.name di UDM.
resource.labels.namespace_name target.namespace Nilai resource.labels.namespace_name dari log mentah dipetakan ke target.namespace di UDM.
resource.labels.pod_name additional.fields.value.string_value Nilai resource.labels.pod_name dari log mentah dipetakan ke kolom dengan kunci "pod_name" di bagian additional.fields di UDM.
resource.labels.project_id target.cloud.project.name Nilai resource.labels.project_id dari log mentah dipetakan ke target.cloud.project.name di UDM.
response.data.num_uses target.resource.attribute.labels.value Nilai response.data.num_uses dari log mentah dipetakan ke label dengan kunci "response_data_num_uses" di bagian target.resource.attribute.labels di UDM.
response.data.orphan target.resource.attribute.labels.value Nilai response.data.orphan dari log mentah dipetakan ke label dengan kunci "response_data_orphan" di bagian target.resource.attribute.labels di UDM.
response.data.renewable target.resource.attribute.labels.value Nilai response.data.renewable dari log mentah dipetakan ke label dengan kunci "response_data_renewable" di bagian target.resource.attribute.labels di UDM.
response.data.ttl target.resource.attribute.labels.value Nilai response.data.ttl dari log mentah dipetakan ke label dengan kunci "response_data_ttl" di bagian target.resource.attribute.labels di UDM.
response.wrap_info.accessor target.resource.attribute.labels.value Nilai response.wrap_info.accessor dari log mentah dipetakan ke label dengan kunci "response_wrap_info_accessor" di bagian target.resource.attribute.labels di UDM.
response.wrap_info.token target.resource.attribute.labels.value Nilai response.wrap_info.token dari log mentah dipetakan ke label dengan kunci "response_wrap_info_token" di bagian target.resource.attribute.labels di UDM.
response.wrap_info.ttl target.resource.attribute.labels.value Nilai response.wrap_info.ttl dari log mentah dipetakan ke label dengan kunci "response_wrap_info_ttl" di bagian target.resource.attribute.labels di UDM.
response.wrap_info.wrapped_accessor target.resource.attribute.labels.value Nilai response.wrap_info.wrapped_accessor dari log mentah dipetakan ke label dengan kunci "response_wrap_info_wrapped_accessor" di bagian target.resource.attribute.labels di UDM.
runner principal.user.userid Nilai runner dari log mentah dipetakan ke principal.user.userid di UDM.
status network.http.response_code Nilai status dari log mentah dipetakan ke network.http.response_code di UDM.
streamingID target.resource.attribute.labels.value Nilai streamingID dari log mentah dipetakan ke label dengan kunci "streamingID" di bagian target.resource.attribute.labels di UDM.
time metadata.event_timestamp.seconds, metadata.event_timestamp.nanos Nilai time dari log mentah diuraikan dan digunakan untuk mengisi kolom metadata.event_timestamp di UDM.
type metadata.product_event_type Nilai type dari log mentah dipetakan ke metadata.product_event_type di UDM.
url principal.url Nilai url dari log mentah dipetakan ke principal.url di UDM. Nilai "MACHINE" ditetapkan ke extensions.auth.type di UDM. Nilai "USER_LOGIN" ditetapkan ke metadata.event_type di UDM. Nilai "HASHICORP" ditetapkan ke metadata.log_type di UDM. Nilai "HASHICORP" ditetapkan ke metadata.product_name di UDM. Nilai "HASHICORP" ditetapkan ke metadata.vendor_name di UDM. Nilai "SERVICE_ACCOUNT" ditetapkan ke target.resource.attribute.roles.type di UDM.

Perubahan

2023-10-26

  • Menambahkan pola Grok untuk menangani log SYSLOG+JSON.

2023-09-22

  • Pemetaan yang diubah untuk "request.remote_port" dari "target.port" menjadi "principal.port".
  • Pemetaan yang diubah untuk "request.remote_address" dari "target.ip" menjadi "principal.ip".
  • Memetakan "error" ke "security_result.description".
  • Memetakan "resource.labels.namespace_name" ke "target.namespace".
  • Memetakan "resource.labels.pod_name", "resource.labels.container_name" ke "additional.fields".
  • Memetakan "resource.labels.project_id" ke "target.cloud.project.name".
  • Memetakan "resource.labels.location" ke "target.location.name".
  • Memetakan "insertId" ke "metadata.product_log_id".
  • Memetakan "labels.k8s-pod/app_kubernetes_io/instance", "labels.k8s-pod/app_kubernetes_io/name", "labels.k8s-pod/component", "labels.k8s-pod/helm_sh/chart", "labels.k8s-pod/controller-revision-hash", "labels.k8s-pod/vault-initialized", "labels.k8s-pod/vault-version", "labels.k8s-pod/vault-sealed", "labels.k8s-pod/vault-perf-standby", dan "labels.k8s-pod/vault-active" ke "target.resource.attribute.labels".
  • Memetakan "labels.compute.googleapis.com/resource_name" ke "target.resource.name".

2023-04-26

  • Menambahkan pola Grok untuk menangani log syslog.
  • Memetakan "status" ke "network.http.response_code".
  • Memetakan "runner" ke "principal.user.userid"
  • Memetakan "job_id", "job_status" ke "additional.fields".

2023-03-24

  • Memetakan "host" ke "observer.hostname".
  • Memetakan "cluster" ke "observer.resource.name".
  • Jika log berisi cluster, "cluster" akan dipetakan ke "observer.resource.resource_type".
  • Menambahkan blok JSON untuk mengambil data dari kolom "_raw".
  • "httpStatus" dipetakan ke "network.http.response_code".
  • "httpUrl" dipetakan ke "target.url".
  • "pid" dipetakan ke "target.process.pid".
  • "msg" dipetakan ke "metadata.description".
  • "url" dipetakan ke "principal.url".
  • "hostname" dipetakan ke "observer.hostname".
  • "streamingID", "requestId", "httpHeaders.cf-cache-status", "httpHeaders.cf-ray", "httpHeaders.gitlab-lb", "httpHeaders.gitlab-sv", "httpHeaders.x-request-id", "httpHeaders.x-content-type-options", "httpHeaders.x-frame-options", "httpHeaders.ratelimit-limit", "httpHeaders.ratelimit-observed", "httpHeaders.ratelimit-remaining", "httpHeaders.ratelimit-reset", "httpHeaders.ratelimit-resettime", "httpHeaders.server", "httpHeaders.referrer-policy" dipetakan ke "target.resource.attribute.labels".
  • "method" dipetakan ke "network.application_protocol".
  • "headers.user-agent" dipetakan ke "network.http.parsed_user_agent".
  • "httpHeaders.cache-control" dipetakan ke "additional.fields".
  • "httpHeaders.content-type", "httpHeaders.content-length", "maskedToken", "headers.accept" dipetakan ke "security_result.about.resource.attribute.labels".
  • "headers.x-real-ip" dipetakan ke "principal.ip".
  • "headers.x-forwarded-host" dipetakan ke "principal.hostname".
  • "headers.x-forwarded-port" dipetakan ke "principal.port".
  • "headers.snyk-acting-org-public-id", "headers.snyk-flow-name", "headers.snyk-request-id" dipetakan ke "principal.resource.attribute.labels".

2023-02-09

  • Parser yang baru dibuat.