Hi everyone,
We’re running Node.js containers on Kubernetes (Rancher-managed CaaS shared clusters) with centralized logging to OpenSearch Dashboards. Currently, our container is captured and indexed with this structure:
{
“_source”: {
“cluster_name”:
“kubernetes”: {
“container”: { “name”: },
“pod”: { “name”:},
“deployment”: { “name”: }
},
“namespace”:,
“@timestamp”: ,
“message”:
}
}
Instead of plain text, we want our application to emit structured JSON logs like this:
console.log(JSON.stringify({
timestamp:",
level: ,
category: ,
step: ,
message:,
environment:,
additionalDetails:,
app:
}));
Our goal is for those fields (level, category, step, message, additionalDetails, environment) to appear as top-level, individually searchable and filterable fields in the OpenSearch document not buried as a JSON string inside the message field. Is that possible? If so, does it happen automatically, or is there something we need to configure or request from the platform team?