Home / Companies / Grafana Labs / Blog / January 2021

January 2021 Summaries

18 posts from Grafana Labs

Filter
Month: Year:
Post Summaries Back to Blog
PromQL is a functional query language utilized for selecting and aggregating time series data in real time, commonly used for creating dashboards and alerts within the Prometheus monitoring system. The training session attended by the author covered the fundamentals of the time series data model, metric types, and both basic and advanced querying techniques, emphasizing the importance of understanding Prometheus' data model, which stores all data as time series. PromQL differs from SQL in that it is a nested functional language, with expressions evaluating to intermediary values and supporting two query types: instant and range queries. Advanced querying involves working with histograms, filtering, and using set operators to correlate time series data. Instrumentation best practices were also discussed, highlighting two guidelines—the USE Method for resources and the RED Method for request-handling services—as well as Prometheus-specific practices. Additionally, PromQL is instrumental in writing alerts, and Prometheus provides alerting best practices that can be explored further through recommended talks and documentation.
Jan 29, 2021 737 words in the original blog post.
Grafana Labs undertook a significant project to transition their Cortex clusters from chunks to blocks storage, ensuring zero impact on Grafana Cloud customers. This complex migration was driven by the need for a more efficient and scalable storage solution, culminating in the launch of Grafana Mimir, an open-source storage engine for Prometheus. The migration strategy involved using shadow clusters to test the new blocks storage against the existing chunks storage, ensuring performance gains and data accuracy. The process required meticulous planning, including developing the blocksconvert tool to rewrite historical data from chunks to blocks, an operation that took months due to the vast amounts of data involved. The transition was executed through a phased approach, with features like shuffle sharding and a bucket index introduced to enhance scalability and performance. The successful migration marks a new era for Grafana Labs, promising further innovations in storing and querying Prometheus metrics at scale.
Jan 28, 2021 1,166 words in the original blog post.
Grafana Cloud's new synthetic monitoring feature enhances user experience and website performance by proactively monitoring services, succeeding the previous worldPing tool with improved capabilities. This feature, available to all Grafana Cloud users including those on the free plan, utilizes the Prometheus blackbox exporter to conduct various protocol checks such as Ping, HTTP/HTTPS, TCP, DNS, and introduces new check types like traceroute and MultiHTTP. It allows users to configure checks and alerts through an intuitive interface, using hosted metrics and logs from Grafana Cloud. Synthetic monitoring not only provides a comprehensive overview of service health but also integrates seamlessly with existing Grafana dashboards, enabling users to visualize endpoint availability alongside other infrastructure data. The feature supports the creation of private probes for more flexible availability checks and offers REST API functionality for programmatic provisioning of checks, making it a significant upgrade from its predecessor. Users can explore these capabilities through a free 14-day trial of Grafana Cloud's Pro plan, after which they can access the free tier with limited resources.
Jan 27, 2021 2,101 words in the original blog post.
The article compares two popular open-source load testing tools, k6 and JMeter, highlighting their strengths and weaknesses in various testing scenarios. JMeter, a veteran in the field, is GUI-driven and user-friendly for non-developers, supporting numerous protocols and offering extensive documentation and community support. It excels in environments requiring quick setup and extensive protocol support but can struggle with resource efficiency and requires plugins for extended features. In contrast, k6, written in Go, is code-driven and prioritizes developer experience with JavaScript scripting, offering superior performance and efficiency by utilizing goroutines instead of threads, which allows it to handle more virtual users with fewer resources. k6 also integrates well with modern development workflows and CI/CD pipelines, making it suitable for collaborative engineering teams. The article suggests choosing between the tools based on specific project requirements, team composition, and existing workflows, emphasizing that the right tool depends on the context rather than a definitive best option.
Jan 27, 2021 5,447 words in the original blog post.
The Raspberry Pi, an affordable and versatile device, is widely used for various software experiments due to its small size and full computer functionality, making it ideal for continuous monitoring projects. Setting it up involves selecting an operating system, with many users opting for Raspberry Pi OS or a compatible Linux distribution. By connecting a Raspberry Pi to a Grafana Cloud account, users can easily collect and visualize system metrics through pre-built dashboards, integrations, and alerts, offering a streamlined alternative to manually configuring Prometheus and Grafana setups. Grafana Cloud provides a free plan with features such as metrics and logs retention, synthetic monitoring, and basic team collaboration options, while a 14-day trial of its Pro plan offers extended capabilities. Utilizing Grafana Cloud simplifies the monitoring process, allowing enthusiasts to focus more on creative projects with their Raspberry Pi, rather than on the technical intricacies of setting up a monitoring system from scratch.
Jan 26, 2021 1,068 words in the original blog post.
Debugging performance issues in Python servers can be challenging, especially when it is difficult to replicate the conditions under which the issues occur. The article discusses using flame graphs to continuously profile code, thereby identifying specific lines responsible for performance problems. CPU utilization is a critical metric for application performance, as it impacts both server costs and end-user experience. High CPU usage can lead to increased server expenses and slower application response times. Flame graphs help pinpoint which parts of the code contribute most to CPU usage, enabling targeted optimizations. The article illustrates this with an example using Pyroscope, an open-source continuous profiler, demonstrating how optimizing a function called foo() reduced CPU utilization by 66%, resulting in significant cost savings. By identifying and addressing bottlenecks, such tools allow for improved performance and cost efficiency.
Jan 26, 2021 718 words in the original blog post.
Distributed tracing is a crucial element in enhancing application performance by tracking individual requests as they traverse through various services within an infrastructure, providing insights that metrics and logs alone cannot offer. While metrics are efficient for aggregating data and logs help in understanding sequential events, they both lack the ability to pinpoint the exact behavior of a single request within a service. Grafana Labs addresses this gap with Grafana Tempo, a scalable and cost-effective distributed tracing backend that simplifies the tracing process by relying solely on object storage, eliminating the need for complex clusters like Elasticsearch or Cassandra. Tempo integrates seamlessly with other Grafana tools, such as logs and Prometheus exemplars, to provide a comprehensive overview of application performance. Distributed tracing, effective in both microservices and monolithic architectures, enables the diagnosis of performance issues by revealing the detailed path and duration of requests, thereby guiding developers on where to focus their optimization efforts. Context propagation plays a vital role in tracing by passing trace information across services, ensuring that the backend can reconstruct the entire trace for analysis. This guide highlights the benefits of incorporating distributed tracing and encourages developers to integrate it into their observability practices for improved application performance.
Jan 25, 2021 1,672 words in the original blog post.
An introductory webinar on observability, hosted by Grafana Labs' Director of Community and Prometheus maintainer Richard 'RichiH' Hartmann, is scheduled for January 21st and will provide an overview of effective observability for modern cloud workloads. The session will include a detailed exploration of Prometheus, an influential open-source project focused on metrics and alerting, and will discuss the three pillars of observability: metrics, logs, and traces, as well as the integration of tools that work well together. Participants can register for the live event or access a recording afterward, and Grafana Labs has introduced new free and paid Grafana Cloud plans to accommodate various use cases.
Jan 20, 2021 191 words in the original blog post.
Matthew Helmke, a Senior Technical Content Developer at Grafana Labs, is profiled, highlighting his role in creating technical documentation, tutorials, and blog posts to assist users with Grafana's applications. Based in the Midwestern United States, Helmke has a history of contributing to open-source projects and is particularly known for his work on Ubuntu Linux publications. In his personal life, he enjoys playing musical instruments, Dungeons & Dragons, and video games, and he recently acquired an Oryx Pro laptop running Pop!_OS, appreciating its open-source nature. Helmke also shares his unique experience of living in Morocco, where he learned Darija and wrote a book on Moroccan humor, and expresses his eagerness to resume normal social interactions post-Covid by giving hugs.
Jan 15, 2021 352 words in the original blog post.
Prometheus monitoring mixins, conceived by Tom Wilkie and Frederic Branczyk, leverage jsonnet to enable the distribution and customization of Grafana dashboards alongside Prometheus alerts and rules, aiming to enhance observability strategies for system monitoring. These mixins allow users to modify variables dynamically, thus providing flexibility without the need for predefined configurations, which is crucial given the escalating complexity of cloud-native systems. Despite their potential, widespread adoption of mixins faces challenges due to the cognitive load involved in translating jsonnet scripts into functional dashboards and alerts, as well as the need for local customization that generic templates do not always accommodate. Grafana Labs is actively exploring solutions to streamline the lifecycle of mixins, from creation to deployment, to make them more accessible and useful, particularly through potential prototyping efforts and possibly integrating with tools like Grafana Cloud to ease the operational burden. The goal is to democratize observability by allowing more contributors from the open-source community to participate in refining and expanding the use of mixins.
Jan 14, 2021 1,129 words in the original blog post.
Grafana Cloud offers a streamlined approach for users to manage metrics, logs, and traces through its integrations, designed to simplify the setup of observability stacks even for beginners. These integrations bundle the Grafana Agent, preconfigured dashboards, and best-practice alerting defaults for various technologies, eliminating the need for users to manually configure complex systems like Prometheus or custom Grafana dashboards. The Grafana Agent collects and sends observability data to a central store in Grafana Cloud, supporting both Prometheus and OpenTelemetry ecosystems. Users can start by logging into their Grafana Cloud account, connecting data sources, and utilizing integrations for a wide range of technologies. Preconfigured dashboards and curated alerting rules are automatically installed with each integration, providing immediate visualization and alerting capabilities. This setup supports both novice and experienced users by offering simplicity while allowing for customization and expansion. Grafana Cloud's generous free tier includes access to enterprise plugins, making it accessible for various user needs.
Jan 13, 2021 1,105 words in the original blog post.
Grafana Cloud has been updated to offer both free and paid plans, providing a comprehensive and flexible observability stack for metrics, logs, and traces, which is managed by the original maintainers of its open-source components like Prometheus, Graphite, Loki, and Tempo. The free plan includes essential features such as 10,000 series for metrics, 50GB of logs, and access for up to three team members, aiming to make real-time monitoring accessible with minimal configuration. The paid Pro plan now offers enhanced capabilities, including five times more metrics, advanced authentication, and team collaboration features, all for a starting price of $49 per month. Grafana Cloud's evolution reflects its commitment to meeting the changing needs of its users by integrating open-source technologies into a full-stack observability solution, emphasizing ease of use and scalability. With one-click integrations and enhanced alerting, Grafana Cloud aims to cater to diverse use cases, maintaining its roots in the open-source community while adapting to modern operational demands.
Jan 12, 2021 794 words in the original blog post.
In this blog post, the author explores how to leverage LogQL range aggregations in Loki to effectively aggregate log data over time, introducing two main types of aggregation operations. The first type operates on log entries as a whole with functions like rate, count_over_time, and bytes_rate, while the second type uses unwrapped ranges to treat extracted labels as sample values, supporting functions such as avg_over_time and quantile_over_time. The post emphasizes the utility of these operations for aggregating data on specific dimensions without vector operations, allowing for enhanced metric queries by parsing log data to include new dimensions. The author notes the importance of grouping for reducing series in metric queries that use logfmt and JSON parsers. Highlighting the potential of combining range vector operations with LogQL parsers, the post also encourages readers to explore the documentation further for a deeper understanding and suggests trying Loki through self-installation or Grafana Cloud, which offers new plans catering to various use cases.
Jan 11, 2021 719 words in the original blog post.
Prometheus, a leading open-source project for metrics and alerting, can be effectively explored through hands-on projects that integrate with Grafana for visualization. The blog details three beginner-friendly projects to demonstrate Prometheus' capabilities: monitoring a computer system using Node Exporter, tracking an express application with Prometheus Middleware, and observing GitHub repositories with GitHub Exporter. Each project involves setting up Prometheus, configuring necessary exporters, and visualizing the collected metrics in Grafana, providing a practical introduction to Prometheus' monitoring potential. The blog also highlights various resources and guides to aid in the setup and encourages users to experiment and create their own projects to deepen their understanding of Prometheus and its applications.
Jan 08, 2021 1,329 words in the original blog post.
Ward Bekker from the Solutions Engineering team presents a video tutorial highlighting effective troubleshooting queries using Grafana Loki, which uniquely doesn't index logs unlike conventional search engines such as Elasticsearch or Solr. The video, lasting about three minutes, demonstrates how to use Loki's "filter" capabilities for forensic troubleshooting without needing an index. To further enhance understanding and usage of Loki, additional resources are provided, including blog posts on escaping special characters with Loki’s LogQL, transforming logs during queries, setting up alerts, and creating fast queries to filter large volumes of logs. The tutorial encourages trying Loki through self-installation or via Grafana Cloud, which offers both free and paid plans to accommodate various use cases.
Jan 07, 2021 233 words in the original blog post.
Smart State Technology (SST), a Netherlands-based company specializing in smart grid solutions, has effectively integrated Grafana to enhance its data visualization capabilities, crucial for its mission to advance energy infrastructures. Founded in 2016 by Dennis Bijwaard and Omar Mansour, SST needed real-time web-based visualizations for their research and development efforts, prompting their adoption of Grafana due to its extensive functionality, ease of setup, and supportive community. The company employs Grafana across various platforms, including lab workstations and low-voltage substations, to manage and visualize a vast amount of data from thousands of sensors. They utilize several plugins such as FlowCharting, SVG, and JSON data source to create detailed dashboards that reveal real-time and historical data on power, voltage, and current metrics. SST's collaboration with Grafana has been productive, enabling them to create dynamic, professional dashboards that offer insights into energy consumption patterns and power quality issues. Looking to the future, SST aims to develop even more comprehensive visualizations and hopes Grafana will continue to evolve, allowing for more extensive customization and potential control functionalities. Additionally, SST plans to incorporate Grafana into their FairPlay project, focused on distributed renewable energy control, further cementing Grafana's role in their visualization and monitoring strategy.
Jan 06, 2021 1,355 words in the original blog post.
Cyril Tovena provides guidance on handling special character escape sequences in Loki's LogQL, highlighting common issues encountered when writing queries with double-quoted strings, particularly when filtering logs containing double quotes or special characters like \U, \t, and \n. To address these challenges, Tovena suggests using backslashes to escape special characters but emphasizes the convenience of raw strings, which are enclosed in backticks and eliminate the need for escaping. While raw strings simplify the syntax for regex and other queries, there is a limitation when a backtick itself needs escaping, necessitating the use of regular strings. Tovena encourages users to explore the full LogQL documentation for further clarification and suggests trying out Loki through Grafana Cloud's new plans, which include both free and paid options.
Jan 05, 2021 484 words in the original blog post.
Eurac Research utilizes Grafana to monitor climate change in the Italian Alps through a network of 24 automatic microclimatic stations spanning an elevation gradient of 1,000 to 2,700 meters. This setup, part of the Long Term Socio Ecological Research (LT(S)ER) site, logs meteorological and biophysical data every 15 minutes to study long-term climate and land-use changes. Despite challenges such as solar-powered sensors, unstable mobile networks, extreme weather conditions, and wildlife interference, Grafana dashboards facilitate infrastructure maintenance and data analysis by identifying trends and anomalies. Grafana's dynamic dashboards, which allow exploration of spatial and temporal patterns, are shared publicly to engage stakeholders and justify funding, making data accessible and visually engaging for users interested in the Alpine ecosystem's climatic dynamics.
Jan 04, 2021 727 words in the original blog post.