fixes [#205240](https://github.com/elastic/kibana/issues/205240) ## Summary Fixes the issue where `error.culprit` is always missing. <img width="800" alt="image" src="https://github.com/user-attachments/assets/9dad6797-dd40-4206-b508-daf8d69d653d" /> <img width="800" alt="image" src="https://github.com/user-attachments/assets/6a0ac25a-bc4b-4a26-b126-86eecbe7e769" /> ### How to test - Run `simple_trace` synthtrace scenario - Run the request below <details> <summary>POST logs-apm.error-default/_doc</summary> ``` POST logs-apm.error-default/_doc { "container": { "id": "80cc20ecab1b57865d7aca0f66ab75a0c6ec2c51f7c53da04a8540215369c359" }, "kubernetes": { "node": { "name": "ip-192-168-55-136.ec2.internal" }, "pod": { "uid": "9bbfe3dc-dace-4638-b8f5-aa6ccf435cbe", "name": "otel-demo-green-3-cartservice-5d5ccc86dd-gcxtr" }, "namespace": "otel-demo-green-3" }, "parent": { "id": "f39639f56a540e0e" }, "agent": { "name": "opentelemetry/dotnet", "version": "1.6.0" }, "source": { "port": 35136, "ip": "::ffff:192.168.50.132" }, "error": { "exception": [ { "handled": true, "message": "Exception (plain, .NET) without culprit", "type": "Grpc.Core.RpcException" } ], "culprit": "culprit msg", // remove to test the N/A scenario "id": "60674e9b23c8b06d83889e63ffe82c1c", //change the id on every run "stack_trace": "Grpc.Core.RpcException: Status(StatusCode=\"FailedPrecondition\", Detail=\"Can't access cart storage. System.ApplicationException: Wasn't able to connect to redis\n at cartservice.cartstore.RedisCartStore.EnsureRedisConnected() in /usr/src/app/src/cartstore/RedisCartStore.cs:line 79\n at cartservice.cartstore.RedisCartStore.EmptyCartAsync(String userId) in /usr/src/app/src/cartstore/RedisCartStore.cs:line 157\")\n at cartservice.cartstore.RedisCartStore.EmptyCartAsync(String userId) in /usr/src/app/src/cartstore/RedisCartStore.cs:line 166\n at cartservice.services.CartService.EmptyCart(EmptyCartRequest request, ServerCallContext context) in /usr/src/app/src/services/CartService.cs:line 65", "grouping_key": "6082c58afd7fa6838ebc27eef6e04829" }, "message": "Exception (plain, .NET)", "url": { "path": "/oteldemo.CartService/EmptyCart", "original": "http://otel-demo-green-3-cartservice:8080/oteldemo.CartService/EmptyCart", "scheme": "http", "port": 8080, "domain": "otel-demo-green-3-cartservice", "full": "http://otel-demo-green-3-cartservice:8080/oteldemo.CartService/EmptyCart" }, "labels": { "k8s_pod_ip": "192.168.62.174", "k8s_pod_start_time": "2024-12-17T02:55:54Z", "service_namespace": "opentelemetry-demo", "k8s_deployment_name": "otel-demo-green-3-cartservice" }, "observer": { "hostname": "450fbf7ab701", "type": "apm-server", "version": "8.13.2" }, "trace": { "id": "699f6d1039fc873191a1c983790db3a2" }, "@timestamp": "2024-12-30T10:30:00.000Z", "data_stream": { "namespace": "default", "type": "logs", "dataset": "apm.error" }, "service": { "node": { "name": "80cc20ecab1b57865d7aca0f66ab75a0c6ec2c51f7c53da04a8540215369c359" }, "framework": { "name": "Microsoft.AspNetCore" }, "name": "synth-node-0", "language": { "name": "dotnet" } }, "host": { "hostname": "ip-192-168-55-136.ec2.internal", "name": "ip-192-168-55-136.ec2.internal" }, "client": { "port": 35136, "ip": "::ffff:192.168.50.132" }, "http": { "request": { "method": "POST" }, "response": { "status_code": 200 }, "version": "2" }, "event": { "agent_id_status": "missing", "ingested": "2024-12-18T18:04:22Z" }, "transaction": { "id": "f39639f56a540e0e", "type": "request", "sampled": true }, "user_agent": { "original": "grpc-go/1.59.0", "name": "Other", "device": { "name": "Other" } }, "span": { "id": "f39639f56a540e0e" }, "timestamp": { "us": 1704892605838000 } } ``` </details> |
||
---|---|---|
.buildkite | ||
.devcontainer | ||
.github | ||
api_docs | ||
config | ||
dev_docs | ||
docs | ||
examples | ||
kbn_pm | ||
legacy_rfcs | ||
licenses | ||
oas_docs | ||
packages | ||
plugins | ||
scripts | ||
src | ||
test | ||
typings | ||
x-pack | ||
.backportrc.json | ||
.bazelignore | ||
.bazeliskversion | ||
.bazelrc | ||
.bazelrc.common | ||
.bazelversion | ||
.browserslistrc | ||
.editorconfig | ||
.eslintignore | ||
.eslintrc.js | ||
.gitattributes | ||
.gitignore | ||
.i18nrc.json | ||
.node-version | ||
.npmrc | ||
.nvmrc | ||
.prettierignore | ||
.prettierrc | ||
.puppeteerrc | ||
.stylelintignore | ||
.stylelintrc | ||
.telemetryrc.json | ||
.yarnrc | ||
BUILD.bazel | ||
catalog-info.yaml | ||
CODE_OF_CONDUCT.md | ||
CONTRIBUTING.md | ||
FAQ.md | ||
fleet_packages.json | ||
github_checks_reporter.json | ||
kibana.d.ts | ||
LICENSE.txt | ||
NOTICE.txt | ||
package.json | ||
preinstall_check.js | ||
README.md | ||
renovate.json | ||
RISK_MATRIX.mdx | ||
run_fleet_setup_parallel.sh | ||
SECURITY.md | ||
sonar-project.properties | ||
STYLEGUIDE.mdx | ||
tsconfig.base.json | ||
tsconfig.browser.json | ||
tsconfig.browser_bazel.json | ||
tsconfig.json | ||
TYPESCRIPT.md | ||
updatecli-compose.yaml | ||
versions.json | ||
WORKSPACE.bazel | ||
yarn.lock |
Kibana
Kibana is your window into the Elastic Stack. Specifically, it's a browser-based analytics and search dashboard for Elasticsearch.
- Getting Started
- Documentation
- Version Compatibility with Elasticsearch
- Questions? Problems? Suggestions?
Getting Started
If you just want to try Kibana out, check out the Elastic Stack Getting Started Page to give it a whirl.
If you're interested in diving a bit deeper and getting a taste of Kibana's capabilities, head over to the Kibana Getting Started Page.
Using a Kibana Release
If you want to use a Kibana release in production, give it a test run, or just play around:
- Download the latest version on the Kibana Download Page.
- Learn more about Kibana's features and capabilities on the Kibana Product Page.
- We also offer a hosted version of Kibana on our Cloud Service.
Building and Running Kibana, and/or Contributing Code
You might want to build Kibana locally to contribute some code, test out the latest features, or try out an open PR:
- CONTRIBUTING.md will help you get Kibana up and running.
- If you would like to contribute code, please follow our STYLEGUIDE.mdx.
- For all other questions, check out the FAQ.md and wiki.
Documentation
Visit Elastic.co for the full Kibana documentation.
For information about building the documentation, see the README in elastic/docs.
Version Compatibility with Elasticsearch
Ideally, you should be running Elasticsearch and Kibana with matching version numbers. If your Elasticsearch has an older version number or a newer major number than Kibana, then Kibana will fail to run. If Elasticsearch has a newer minor or patch number than Kibana, then the Kibana Server will log a warning.
Note: The version numbers below are only examples, meant to illustrate the relationships between different types of version numbers.
Situation | Example Kibana version | Example ES version | Outcome |
---|---|---|---|
Versions are the same. | 7.15.1 | 7.15.1 | 💚 OK |
ES patch number is newer. | 7.15.0 | 7.15.1 | ⚠️ Logged warning |
ES minor number is newer. | 7.14.2 | 7.15.0 | ⚠️ Logged warning |
ES major number is newer. | 7.15.1 | 8.0.0 | 🚫 Fatal error |
ES patch number is older. | 7.15.1 | 7.15.0 | ⚠️ Logged warning |
ES minor number is older. | 7.15.1 | 7.14.2 | 🚫 Fatal error |
ES major number is older. | 8.0.0 | 7.15.1 | 🚫 Fatal error |
Questions? Problems? Suggestions?
- If you've found a bug or want to request a feature, please create a GitHub Issue. Please check to make sure someone else hasn't already created an issue for the same topic.
- Need help using Kibana? Ask away on our Kibana Discuss Forum and a fellow community member or Elastic engineer will be glad to help you out.