Why do Logs Matter?¶
Logs provide access to critical information necessary to monitor the health of an application as well as diagnose issues quickly. Logs are typically closest to the underlying issue and therefore can provide extremely rich context that can help the developer get to the bottom of the issue quickly. Timely access to logs is critical, not just for production but can also dramatically increase developer productivity during the development and testing phase.
Challenges with Logging¶
Cloud native applications are typically operated in Kubernetes clusters. These applications comprise multiple microservices that interact with one another. There are a number of new challenges that have to be addressed to ensure log aggregation works well.
Requests are routed between microservices that may be operating on completely different nodes. Logging in just one place is not an option.
A typical production environment for a popular application can have hundreds of pods during peak usage that are all producing logs. Customers need to seamlessly scale up and down along with the pods with zero manual intervention.
By default, Kubernetes does not maintain a history of logs. When pods are terminated or rescheduled, the logs from an older instance of a pod may not be available anymore. You cannot afford to have blind spots because of missing logs.
All the challenges above are amplified multifold when the application needs to be operated across multiple Kubernetes clusters that are geographically distributed and across disparate infrastructure providers.
How We Help¶
We have invested heavily in developing and testing integration with market leading log management targets such as Elasticsearch and AWS S3.
Zero Code Setup¶
A guided workflow dramatically improves developer productivity and operational simplicity. The entire setup and configuration for log aggregation for multi-cluster deployments can be performed in a few seconds. Developers and Operators can focus on their application instead of worrying about how to tune and optimize infrastructural components.
No YAML Learning Curve¶
With the workload wizard, developers no longer have to deal with the learning curve associated with writing and maintaining the YAML configuration for Fluentd and every infrastructural component in Kubernetes. These are automatically generated and used behind the scenes by the controller. Once enabled, the controller automatically provisions Fluentd and all necessary infrastructural components on the managed Kubernetes clusters.
We provide a hardened and secure approach to storing and managing credentials for log aggregation endpoints. Users do not have to manage these in their YAML files or Helm charts anymore. These are automatically provisioned and deprovisioned on managed clusters by the Controller.
Dynamic Configuration Updates¶
Updates to configuration such as updates to credentials are dynamically picked up in seconds without the need to republish/restart the application.
Health and Performance Monitoring¶
Once the logging infrastructure is deployed and operational, its health is continuously monitored.
Managed Software Updates¶
Customers do not have to deal with the operational burden associated with ongoing software updates of the logging infrastructure components. Our engineers monitor, evaluate, test and release updates on an ongoing basis.