Home / Companies / Honeycomb / Blog / August 2024

August 2024 Summaries

7 posts from Honeycomb

Filter
Month: Year:
Post Summaries Back to Blog
During a failure testing project, an issue was discovered with the OpenTelemetry SDK for Go that caused applications to stop sending telemetry for over 15 minutes, despite the underlying infrastructure continuing to function normally. The problem was traced to the Beagle service, which manages stream processing for SLOs within the Honeycomb observability platform. The issue arose during a simulated availability zone (AZ) failure, when one of the Beagle instances stopped sending telemetry due to a TCP connection timeout, leading to false alerts. A deep dive into the network logs revealed that the gRPC connections were not using keepalives, which are crucial for detecting and reopening failed connections. The solution involved configuring the gRPC library to use keepalives, allowing the system to detect and handle connection failures promptly. This fix was successfully tested by simulating another AZ failure, confirming that the telemetry continued to flow uninterrupted. The experience highlighted the importance of enabling keepalives at the application level to ensure robustness against network disruptions, a lesson reinforced through chaos engineering practices.
Aug 26, 2024 1,720 words in the original blog post.
Full-stack observability is an advanced monitoring approach tailored for modern, cloud-native architectures, offering comprehensive visibility across software systems by integrating data from various telemetry sources like logging, metrics, and tracing. Unlike traditional monitoring, which often separates data by source, full-stack observability combines these elements into a single tool, enhancing real-time debugging, improving system performance, and expediting code deployment through improved CI/CD processes. It provides a unified view that aligns business and technical teams, enabling faster, more informed decision-making and proactive problem resolution, ultimately leading to more reliable software and better business outcomes. As the technology landscape evolves with advances in machine learning and AI, the future of observability will become increasingly intelligent and automated, playing a crucial role in driving innovation, enhancing customer experiences, and achieving organizational goals.
Aug 22, 2024 819 words in the original blog post.
Service Level Objectives (SLOs) are essential tools for aligning technical work with business goals, especially in software engineering where objectives can differ between engineers and business leaders. SLOs create a shared framework by setting clear, measurable targets that encompass both technical and business perspectives, thus simplifying the alignment of daily tasks with strategic outcomes. Honeycomb has introduced features that make creating and managing SLOs more accessible, using familiar query syntax to define Service Level Indicators (SLIs) and providing a user-friendly interface that democratizes the SLO creation process. This approach enables teams to translate business goals into technical metrics easily, fostering collaboration among stakeholders like engineers, SREs, and PMs. These stakeholders can set realistic targets, receive alerts when goals are at risk, and utilize visual dashboards to monitor service health, ensuring aligned efforts towards innovation and value delivery. Honeycomb's tools further empower teams to iterate and refine SLOs, facilitating discussions around goal-setting, prioritization, and performance tracking to achieve organizational objectives effectively.
Aug 19, 2024 1,019 words in the original blog post.
In the discussion of alert systems within organizations, the focus is on the differentiation between reactive alerts, known as Triggers, and proactive alerts, known as Burn Alerts, which are based on Honeycomb's Service Level Objectives (SLOs). While Triggers respond to events after they occur, Burn Alerts provide advance warnings, helping organizations prioritize actions to prevent potential issues. The challenge lies in ensuring alerts reach the right people at the right time, as misdirected alerts can create noise rather than valuable information. The text advocates for a strategic approach where Centers of Production Excellence (CoPE) aim to convert as many Triggers into Burn Alerts as possible, thereby improving organizational resilience and reducing alert fatigue. This involves channeling alerts to appropriate public or private spaces and conducting regular reviews to maintain the relevance of alerts. By fostering open communication and sharing information through practices like incident reviews, organizations can enhance their adaptability and distribute knowledge effectively, thereby supporting production excellence.
Aug 15, 2024 1,024 words in the original blog post.
The text discusses the limitations of relying solely on OpenTelemetry’s auto-instrumentation for telemetry data in software systems and the role of a Center of Production Excellence (CoPE) in overcoming these challenges. Auto-instrumentation provides basic, generic data, which is insufficient for detailed insights specific to business needs, leading to the necessity of custom instrumentation. This process involves defining semantic conventions and creating custom libraries to enhance the quality and utility of telemetry data. A CoPE plays a crucial role in facilitating this process by establishing common ground among teams, encouraging the development of a data strategy that considers different data values, and promoting a culture of continuous improvement and collaboration. This approach helps organizations manage the tradeoffs in telemetry data effectively, ensuring reliability and aiding decision-making. Additionally, the CoPE supports creating forums such as post-incident reviews to gather feedback and improve the instrumentation process, ultimately enabling teams to maintain and enhance their systems' reliability over time.
Aug 08, 2024 1,650 words in the original blog post.
Deploying the OpenTelemetry Collector in Azure Kubernetes Service (AKS) involves addressing specific nuances to ensure successful operation. The Collector acts as a central hub for telemetry data, with applications sending data internally before forwarding it to a backend. However, certain challenges arise, such as the kubeletstatsreceiver needing adjustments to bypass certificate validation due to AKS's use of self-signed certificates, and the K8s attributes processor failing to enrich telemetry with crucial context information when using the default kubenet networking mode. These issues can be mitigated by updating the values.yaml file to enable certain features, such as insecure_skip_verify and configuring services to route telemetry locally, thereby optimizing data flow and avoiding high costs associated with cross-node traffic. Despite these complexities, deploying the Collector on AKS remains straightforward with minor modifications to the Helm chart configurations, ensuring that applications can effectively send telemetry to the node IP and leverage the internalTrafficPolicy for efficient data routing.
Aug 07, 2024 821 words in the original blog post.
The text discusses the Application Performance Index (Apdex), a metric created to simplify application performance reporting by representing user satisfaction with response times as a single score ranging from 0 to 1. This score is calculated by classifying response times into Satisfied, Tolerating, or Frustrated categories based on a predetermined threshold (T). The Apdex score formula considers the proportion of requests falling into these categories, illustrating how small improvements can increase the score. The text further explains how to calculate Apdex scores in Honeycomb using Derived Columns, which involve defining custom fields to measure satisfaction across complete request traces, not just individual spans. By adjusting the thresholds and monitoring the Apdex score over time, teams can assess user satisfaction and the impact of performance changes.
Aug 05, 2024 647 words in the original blog post.