Case study
One of the World’s Largest Packaged Foods and Beverages Company
How SquareShift unified traces, logs, metrics and infrastructure for Java, Python and PHP workloads on Kubernetes, using zero-code instrumentation and reducing ingested log volume by roughly one third.
Book a session →
Client
A Fortune 500 global food and beverage company modernising observability across a mixed Kubernetes application estate.
Industry
Food & Beverage
Services
Stack
Elastic Observability · OpenTelemetry · Elastic Distribution of OpenTelemetry (EDOT) · Kubernetes · Azure Kubernetes Service (AKS) · Helm · Elastic Synthetics · Elastic Machine Learning · Elastic Agent Builder · ES|QL
How SquareShift delivered it.
The challenge
The company wanted to replace a fragmented monitoring estate with one open-standards platform. Application tracing, command-center dashboards, logs and infrastructure metrics lived in separate systems, so engineers had to cross-reference tools to understand incidents across Java, Python and PHP services running on Kubernetes.
Application teams would not change code, while the Python services used a runtime and base image that the standard instrumentation image did not support. Missing application logs, collector restart loops, high volumes of low-value system logs and private authenticated endpoints added separate gaps that a simple agent rollout could not solve.
What we delivered
SquareShift standardised instrumentation on OpenTelemetry and deployed it through the Kubernetes operator, so services could be onboarded through deployment configuration rather than code. The team instrumented Java and PHP services, then built a custom Python 3.11 image for the unsupported Alpine-based workloads.
The team corrected the logging configuration that removed the telemetry handler at startup and fixed the collector memory setting behind repeated restarts. Per-node collectors now feed a central gateway, while namespace-scoped collection filters low-value system logs and reduced ingested volume by roughly one third.
Private synthetic monitoring now checks authenticated applications from inside Kubernetes. Threshold alerts, anomaly-detection jobs, natural-language investigation, automated root-cause workflows and a shared command-center dashboard now run on the same traces, logs, metrics and infrastructure data, replacing separate investigation paths with one operating model. For observability on Elastic, see our Elastic search and observability services.
The outcome
Operations teams now work from one view across Java, Python and PHP services, with traces connected to logs and the hosts, pods and containers beneath them. The platform restored previously missing logs and stable ingestion while meeting the requirement for zero application code changes.
The company also gained a repeatable onboarding pattern, monitoring for private authenticated endpoints and a data-backed way to size collectors and forecast cost per service. Scoped collection lowered unnecessary log volume, and the delivered runbooks let application teams extend the pattern themselves.
Zero-code instrumentation succeeds only when the runtime, collector and logging path are treated as one system. Healthy traces can still hide missing logs or unstable ingestion.
Observability & Reliability Practice Lead, SquareShift


