June 2023 Summaries
4 posts from Lumigo
Filter
Month:
Year:
Post Summaries
Back to Blog
The text discusses Software Development Kits (SDKs) and their role in empowering developers to leverage existing APIs and services seamlessly. An SDK acts as an abstraction layer that hides the intricacies of the underlying APIs, enabling developers to work more efficiently and effectively. The text also explores the concept of SDKs as a Service (SDKaaS), which provides a self-hosted way to support the automatic generation of SDKs for multiple programming languages and platforms at scale. Specifically, it highlights the OpenAPI Generator project, an open-source tool that generates SDKs from OpenAPI specifications, providing developers with a streamlined process to create SDKs at scale. The text also covers deploying, testing, and monitoring the SDK service using ECS (Elastic Container Service) and AWS resources, including metrics collection through Lumigo. Finally, it touches on taking SDK development further by exploring critical aspects of testing and monitoring, as well as contributing back to open-source projects like OpenAPI Generator.
Jun 30, 2023
1,766 words in the original blog post.
Health checks for cloud infrastructure are essential mechanisms to monitor the health and availability of components within a system. Assessing the health of distributed software systems running on cloud-based infrastructure is complex due to the need to define appropriate health check configurations for each component, managing health checks at scale in dynamic environments like Kubernetes can be challenging. Health checks must adapt to changing network topology and discover appropriate endpoints to monitor. Applications built as distributed systems are designed such that an app is self-contained and does not rely on external resources, requiring environment variables to ensure health check config aligns with dynamic port assigned during runtime. The lifecycle of a container includes starting, stopping, and restarting, which can lead to false negatives if health checks are not designed to factor these dynamic states. Basic health check designs should be independent of application logic, resilient to failures in the application or underlying infrastructure, and provide clear and consistent health status using standardized health status code from OpenAPI specification. Kubernetes provides built-in functionality for health checks through liveness probes and readiness probes, which can simplify the management and analysis of health check data. Observability tools like OpenTelemetry can standardize instrumentation, collect, analyze, and correlate telemetry data across services, improving troubleshooting, performance optimization, and understanding interactions within distributed web applications. However, inefficiencies remain unresolved due to excessive resource consumption, noise and false positives emerging from high volume of data generated by Kubernetes, leading to alert fatigue and high running costs for observability tools.
Jun 27, 2023
1,442 words in the original blog post.
KubeDay Israel was a highly anticipated one-day event dedicated to Kubernetes and cloud native computing, hosted by the Cloud Native Computing Foundation (CNCF) in Tel Aviv. The event brought together industry-leading speakers, interactive sessions, and unique networking opportunities, showcasing the global strength and reach of the CNCF community, particularly highlighting the impactful presence of the Israeli community on the world stage. The day featured a range of technical deep-dives, best practices, and engaging talks, including presentations on Kubernetes security vulnerabilities, deploying Policy-as-Code, automating governance strategies for managing hundreds of Kubernetes clusters, and simplifying multi-cluster Kubernetes management with Karmada. Attendees left with new insights, knowledge, and connections, and the event proved once again why Kubernetes is an indispensable tool in today's cloud-first world.
Jun 21, 2023
1,193 words in the original blog post.
The text discusses the concept of execution tags in software engineering, specifically in the context of containerized applications (ECS). Execution tags are seen as a reliable compass that helps developers navigate complex codebases, identify bugs, and understand application behavior. The introduction mentions that execution tags can be thought of as road signs in the highway system of applications, guiding developers to specific functions causing issues or pinpointing requests creating bottlenecks. The text also highlights the importance of debugging with execution tags, making it a streamlined process by examining code behavior, dispelling confusion, and restoring optimal code conditions. Additionally, the article provides guidance on getting started with execution tags for ECS, including setting up the environment, integrating Lumigo tracer, and using the `set_attribute()` function to set execution tags. The text also discusses the capabilities of execution tags, such as filtering tagged invocations, tracing open-source libraries, and automagically tracing popular libraries like Express and MongoDB. Overall, the article emphasizes the power of execution tags in simplifying complexity and improving debugging efficiency.
Jun 14, 2023
1,045 words in the original blog post.