Mengumpulkan log audit HashiCorp
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
- Login ke konsol Google SecOps.
- Buka SIEM Settings > Collection Agents.
- Download File Autentikasi Proses Transfer.
Mendapatkan ID pelanggan Google SecOps
- Login ke konsol Google SecOps.
- Buka Setelan SIEM > Profil.
- Salin dan simpan ID Pelanggan dari bagian Detail Organisasi.
Menginstal Agen BindPlane
- Untuk penginstalan Windows, jalankan skrip berikut:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
- 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
- Opsi penginstalan tambahan dapat ditemukan di panduan penginstalan ini.
Mengonfigurasi Agen BindPlane untuk menyerap Syslog dan mengirim ke Google SecOps
- Akses komputer tempat BindPlane diinstal.
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
Mulai ulang Agen BindPlane untuk menerapkan perubahan:
sudo systemctl restart bindplane
Mengaktifkan Syslog untuk HCP Vault
- Login ke Portal HCP.
- Buka Cluster Vault.
- Pilih cluster Vault dari daftar cluster yang di-deploy.
- Di Ringkasan Cluster, temukan dan salin Alamat Vault (misalnya, https://vault-cluster-name.hashicorpcloud.com:8200).
- 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
- Buka terminal atau command prompt.
Tetapkan alamat server Vault menggunakan variabel lingkungan:
export VAULT_ADDR="https://vault-cluster-name.hashicorpcloud.com:8200"
Login ke Vault menggunakan token root:
vault login <root-token>
Mengonfigurasi Jalur Syslog ke Soket Syslog Eksternal
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"
Konfirmasi konfigurasi baru:
vault audit list
Output akan menampilkan konfigurasi soket baru.
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.