Aleksandr Razumov

Results 106 issues of Aleksandr Razumov

Achieve 100% prometheus compatibility.

Query: ``` sum(count_over_time({cluster=~"$cluster", job="$export_job"} |~ "process_exec" |~ "$namespace" |~ "$container_runtime" | json | process_exec_process_pod_namespace =~ "$namespace" and process_exec_parent_binary=`$container_runtime` and process_exec_parent_pid != 1 [$__range])) by (process_exec_process_pod_workload) ``` Error: ``` "instant query:...

Fallback from zap json logs to generic ones without the "msg" field. Example: Kubernetes audit log ```json {"kind":"Event","apiVersion":"audit.k8s.io/v1","level":"Request","auditID":"49a08e1d-3ed6-4879-a3c4-0b83cb349a58","stage":"ResponseComplete","requestURI":"/api/v1/pods?fieldSelector=status.phase%21%3DSucceeded%2Cstatus.phase%21%3DFailed\u0026limit=100","verb":"list","user":{"username":"system:serviceaccount:kube-federation-system:host-cluster-kommander","uid":"03859d7f-5b1f-4476-b38b-0312199c1463","groups":["system:serviceaccounts","system:serviceaccounts:kube-federation-system","system:authenticated"]},"sourceIPs":["172.21.160.144"],"objectRef":{"resource":"pods","apiVersion":"v1"},"responseStatus":{"metadata":{},"code":200},"requestReceivedTimestamp":"2025-10-14T10:46:27.983670Z","stageTimestamp":"2025-10-14T10:46:28.002751Z","annotations":{"authentication.k8s.io/legacy-token":"system:serviceaccount:kube-federation-system:host-cluster-kommander","authentication.k8s.io/legacy-token-manual-secret":"host-cluster-kommander","authorization.k8s.io/decision":"allow","authorization.k8s.io/reason":"RBAC: allowed by ClusterRoleBinding \"kubefed-controller-manager:host-cluster-kommander\" of ClusterRole \"kubefed-controller-manager:host-cluster-kommander\" to ServiceAccount \"host-cluster-kommander/kube-federation-system\""}} ```

enhancement

For analytical/metrics purposes add size in bytes of 1. Raw log record `size_raw` 2. Aggregated (parsed) log record `size`

Data retetion options per tenant. Probably even per `f(resource)` with callbacks?

enhancement

Integrate sentry for error reporting. All 500-s and panics should be sent to sentry.

Multi-tiered storage support, e.g. sending to block storage after some retention policy

The oteldb should support downsampling, probably by writing simultaniously into multiple destinations with different degree of sampling. Probably even per `f(resource)` with callbacks?

https://github.com/planetscale/vtprotobuf