<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: didiViking</title>
    <description>The latest articles on DEV Community by didiViking (@didiviking).</description>
    <link>https://dev.to/didiviking</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F688927%2F2c7f9f9c-7ad1-453f-b4e9-a3480c8812f3.jpg</url>
      <title>DEV Community: didiViking</title>
      <link>https://dev.to/didiviking</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/didiviking"/>
    <language>en</language>
    <item>
      <title>One Year Inside the Engine Room of Cloud Native Days Romania</title>
      <dc:creator>didiViking</dc:creator>
      <pubDate>Wed, 03 Jun 2026 12:34:11 +0000</pubDate>
      <link>https://dev.to/didiviking/one-year-inside-the-engine-room-of-cloud-native-days-romania-a0</link>
      <guid>https://dev.to/didiviking/one-year-inside-the-engine-room-of-cloud-native-days-romania-a0</guid>
      <description>&lt;h3&gt;
  
  
  What I learned after speaking, then stepping behind the curtains of a community conference
&lt;/h3&gt;

&lt;p&gt;A year ago, I walked onto the stage at &lt;a href="https://cloudnativedays.ro/" rel="noopener noreferrer"&gt;Cloud Native Days Romania&lt;/a&gt; as a speaker. I thought that was the main contribution: show up, deliver, leave.&lt;br&gt;&lt;br&gt;
It wasn’t.&lt;br&gt;&lt;br&gt;
The same month, I joined the organizing team of &lt;a href="https://www.linkedin.com/company/cloudnativedaysromania/" rel="noopener noreferrer"&gt;Cloud Native Days Romania&lt;/a&gt;, and my perspective shifted completely.&lt;br&gt;&lt;br&gt;
What I saw behind the scenes changed how I think about conferences, communities, and what “ecosystem growth” actually means in Eastern Europe.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flnyjc774qaiyx2hgklp8.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flnyjc774qaiyx2hgklp8.jpeg" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  From speaker to organizer: a change in mentality
&lt;/h3&gt;

&lt;p&gt;Speaking at a conference is a moment. Organizing one is a system.&lt;br&gt;&lt;br&gt;
Once you move behind the curtain, you stop seeing talks and start seeing dependencies. The biggest shift for me was realizing this:&lt;/p&gt;

&lt;h4&gt;
  
  
  A conference is not an event. It’s a coordination problem across people, time zones, confidence levels, and access to opportunity.
&lt;/h4&gt;

&lt;p&gt;And in Eastern Europe, that coordination carries extra weight because visibility is unevenly distributed.&lt;/p&gt;

&lt;h3&gt;
  
  
  CFP reviews: where signal meets bias (and why it matters)
&lt;/h3&gt;

&lt;p&gt;One of the main responsibilities I took during this year was helping with the CFP reviews. On paper, it looks simple: evaluate proposals, pick the best ones. In reality, it’s much more nuanced.&lt;br&gt;&lt;br&gt;
You are constantly balancing: experienced speakers vs. first-time speakers, highly polished abstracts vs. high-potential ideas with weak packaging, trending topics vs. foundational knowledge the community still needs, international reach vs. local relevance.&lt;br&gt;&lt;br&gt;
And there’s a hidden challenge: many strong engineers underestimate themselves on paper. Some of the best talks I’ve seen would never survive a “strictly formal” CFP scoring system. That’s why review culture matters.&lt;br&gt;&lt;br&gt;
We didn’t just ask: Is this good?&lt;/p&gt;

&lt;p&gt;We asked: Does this deserve a stage, and what would it take to make it ready? That second question is where communities are built.&lt;/p&gt;

&lt;h3&gt;
  
  
  Encouraging international speakers: visibility is not evenly distributed
&lt;/h3&gt;

&lt;p&gt;Another part of my role was reaching out to international speakers and encouraging them to apply. This sounds simple, but it’s actually strategic.&lt;br&gt;&lt;br&gt;
Eastern European conferences often face a visibility gap: great content exists locally, but speaker pipelines are often local-heavy by default.&lt;br&gt;&lt;br&gt;
International speakers may not even know the event exists. So part of the job becomes outreach, storytelling, and trust-building. We need to make an effort in having more women as speakers and more professionals from underrepresented groups.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fedze9p1b0knus20u5i0q.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fedze9p1b0knus20u5i0q.jpeg" width="800" height="534"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You’re not just asking someone to submit a talk — you’re saying:&lt;br&gt;&lt;br&gt;
“This community is worth your time.”&lt;br&gt;&lt;br&gt;
And that matters more than people think.&lt;/p&gt;

&lt;h4&gt;
  
  
  Because conferences don’t grow only through attendees. They grow through perceived relevance in the global ecosystem.
&lt;/h4&gt;

&lt;h3&gt;
  
  
  Hosting a virtual event: lowering the barrier to entry
&lt;/h3&gt;

&lt;p&gt;One of the most meaningful initiatives I helped with was hosting a virtual live session aimed at:&lt;br&gt;&lt;br&gt;
-First-time speakers who want to apply but don’t know how&lt;br&gt;&lt;br&gt;
-Experienced speakers willing to share how they craft talks&lt;br&gt;&lt;br&gt;
-Community members curious about CFP processes&lt;/p&gt;

&lt;p&gt;The goal was simple: reduce friction. What surprised me most was not the questions — it was the hesitation.&lt;br&gt;&lt;br&gt;
Many people don’t lack ideas. They lack permission structures.&lt;/p&gt;

&lt;h4&gt;
  
  
  They don’t know if they are “allowed” to submit.
&lt;/h4&gt;

&lt;p&gt;Once you remove that invisible barrier, submissions diversify quickly. And diversity of submissions is what keeps a conference alive.&lt;/p&gt;

&lt;h3&gt;
  
  
  Behind the scenes: the invisible work no one sees
&lt;/h3&gt;

&lt;p&gt;From the outside, a conference looks like a polished sequence of talks.&lt;br&gt;&lt;br&gt;
Behind the scenes, it is: multiple CFP discussions, balancing topic coverage across tracks, speaker coordination across countries and time zones, reviewing abstracts that arrive at the last minute, finding sponsors, looking the right venue, creating unique experiences for both speakers and attendees.&lt;/p&gt;

&lt;p&gt;The rush before the event is real and this is where well organizing teams thrive. I’m happy I found the community that is both very well organized and energetic and their motivation is really inspiring for the open source and cloud native ecosystem.&lt;/p&gt;

&lt;p&gt;The volunteers also helped me see the importance of community and understand that behind the scenes, the love for knowledge sharing is truly an valuable asset.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwda201gof8mu8vtlxob5.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwda201gof8mu8vtlxob5.jpeg" width="800" height="534"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Merge-Forward: our community partner
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjxc6c8r5m0ef1yeavl7t.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjxc6c8r5m0ef1yeavl7t.jpeg" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Raising visibility for underrepresented groups in tech is a wonderful initiative and &lt;a href="https://ocgroups.dev/cncf/group/merge-forward" rel="noopener noreferrer"&gt;Merge-Forward&lt;/a&gt; does it brilliantly. Created last year in July and rapidly expanding, Merge-Forward hosts under its umbrella 7 working groups, which constantly thrive in community activities, mentorship and collaboration.&lt;/p&gt;

&lt;p&gt;We hope more allies can join our mission, participate in our online monthly calls and help build a global community.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why these events matter in Eastern Europe
&lt;/h3&gt;

&lt;p&gt;Community conferences like Cloud Native Days Romania play a role that goes beyond technical talks. In Eastern Europe specifically, they function as:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Talent visibility engines: They surface engineers who may not have global platforms yet.
&lt;/li&gt;
&lt;li&gt;Knowledge distribution hubs: They bring cloud-native practices into companies that are still modernizing.
&lt;/li&gt;
&lt;li&gt;Career accelerators: Many first-time speakers later become advocates, maintainers, or engineering leaders.
&lt;/li&gt;
&lt;li&gt;Cross-border bridges: They connect engineers across countries that rarely share professional spaces otherwise.
This last point is especially important.&lt;/li&gt;
&lt;/ol&gt;

&lt;h4&gt;
  
  
  Cloud-native systems are global, but communities are still often local. Conferences help close that gap.
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx0sz4dgquhbpg8j5t0px.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx0sz4dgquhbpg8j5t0px.jpeg" width="800" height="534"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  What I learned after one year inside the organization
&lt;/h3&gt;

&lt;p&gt;If I had to summarize the biggest lessons, they would be these:&lt;/p&gt;

&lt;h4&gt;
  
  
  1. Community is not passive — it is engineered.
&lt;/h4&gt;

&lt;p&gt;You don’t “have” a community. You design conditions for it to form.&lt;/p&gt;

&lt;h4&gt;
  
  
  2. The CFP is a mentorship tool, not a filter.
&lt;/h4&gt;

&lt;p&gt;The way you review submissions shapes who becomes visible.&lt;/p&gt;

&lt;h4&gt;
  
  
  3. First-time speakers are a high-impact investment.
&lt;/h4&gt;

&lt;p&gt;They carry future ecosystems.&lt;/p&gt;

&lt;h4&gt;
  
  
  4. Most barriers are psychological, not technical.
&lt;/h4&gt;

&lt;p&gt;People need encouragement more than instruction.&lt;/p&gt;

&lt;h4&gt;
  
  
  5. Conferences are infrastructure, not events.
&lt;/h4&gt;

&lt;p&gt;They are part of the cloud-native stack — just social instead of technical.&lt;/p&gt;

&lt;h3&gt;
  
  
  How you can make a difference
&lt;/h3&gt;

&lt;p&gt;I used to think speaking at conferences was the contribution.&lt;br&gt;&lt;br&gt;
Now I see it differently. Speaking is a contribution.&lt;br&gt;&lt;br&gt;
Organizing is a different one.&lt;/p&gt;

&lt;p&gt;But enabling others to speak — especially those who never thought they could — is where the long-term impact actually sits.&lt;br&gt;&lt;br&gt;
And that is what makes community work in Eastern Europe feel meaningful right now: it’s not about scaling events.&lt;/p&gt;

&lt;h4&gt;
  
  
  It’s about scaling participation.
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F01ofovhxv7o5440ei1l8.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F01ofovhxv7o5440ei1l8.jpeg" width="800" height="534"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can check all the Cloud Native Computing Foundation &lt;a href="https://www.cncf.io/events/" rel="noopener noreferrer"&gt;events&lt;/a&gt; and learn about its communities. Even if you cannot participate in person, there are online &lt;a href="https://www.youtube.com/@cncf" rel="noopener noreferrer"&gt;resources&lt;/a&gt; to help you catch up with the latest.&lt;/p&gt;

&lt;p&gt;I’m really happy I could be part of the organizing team this year and I’m looking for your ideas on how to improve such events.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fubquoqrle0pwkjg0nawc.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fubquoqrle0pwkjg0nawc.jpeg" width="800" height="534"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For any questions, you can find me on &lt;a href="https://www.linkedin.com/in/diana-todea-b2a79968/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt; or &lt;a href="https://github.com/didiViking" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Until next time, mulțumesc!&lt;/p&gt;

</description>
      <category>community</category>
      <category>diversity</category>
      <category>cloudnative</category>
      <category>womenintech</category>
    </item>
    <item>
      <title>Observability Has a Data Hoarding Problem</title>
      <dc:creator>didiViking</dc:creator>
      <pubDate>Mon, 11 May 2026 07:30:51 +0000</pubDate>
      <link>https://dev.to/didiviking/observability-has-a-data-hoarding-problem-1gin</link>
      <guid>https://dev.to/didiviking/observability-has-a-data-hoarding-problem-1gin</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmovirh8iu2jbzk7wtqvp.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmovirh8iu2jbzk7wtqvp.jpeg" width="800" height="600"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Somewhere in Greece&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;At the end of 2025, I gave a talk at a local &lt;a href="https://www.meetup.com/cloud-native-bcn/events/311460252/" rel="noopener noreferrer"&gt;meetup&lt;/a&gt; in Spain about something that, at the time, still felt a bit niche: &lt;strong&gt;Green Observability&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Most conversations around sustainability in tech tend to focus on infrastructure efficiency, cloud cost optimization, or greener hardware choices. Observability rarely enters that discussion. It is usually treated as a purely operational concern — something essential for reliability, debugging, and incident response — but not something we associate with environmental impact.&lt;/p&gt;

&lt;p&gt;My talk explored a simple but uncomfortable idea: &lt;strong&gt;observability itself has a footprint&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Every metric we collect, every log we retain, every trace we store, and every dashboard query we run consumes compute, storage, and energy somewhere. At small scale, this impact feels negligible. But at the scale modern cloud-native systems operate today, observability becomes infrastructure in its own right — and infrastructure has an environmental cost.&lt;/p&gt;

&lt;p&gt;A few months later, I expanded this topic into a &lt;a href="https://fosdem.org/2026/schedule/event/8BYQKZ-green_observability_unleashed/" rel="noopener noreferrer"&gt;talk&lt;/a&gt; at FOSDEM, focusing specifically on the energy and carbon footprint of modern observability systems. What stood out to me after that talk was the reaction from peers in the observability space. SREs, platform engineers, and observability practitioners came up to continue the discussion, and many strongly agreed with the core message. The feedback was consistent: telemetry growth is rarely questioned, observability systems are becoming increasingly expensive to operate, and the industry has normalized a level of data collection that often exceeds what teams actually use.&lt;/p&gt;

&lt;p&gt;That conversation made one thing very clear to me: this is not a theoretical concern anymore. It is already happening in production systems everywhere.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Observability Sustainability Paradox
&lt;/h3&gt;

&lt;p&gt;Modern software systems are complex, distributed, and highly dynamic. Observability — collecting metrics, logs, and traces — is essential for understanding these systems. Without it, operating large-scale infrastructure would be nearly impossible.&lt;/p&gt;

&lt;p&gt;But the same mechanisms that make observability powerful also make it expensive.&lt;/p&gt;

&lt;p&gt;High-cardinality metrics, verbose logging, long retention periods, frequent scraping intervals, and always-on tracing pipelines significantly increase storage and compute requirements. Kubernetes environments amplify this further by generating telemetry at every layer: clusters, nodes, containers, services, and applications.&lt;/p&gt;

&lt;p&gt;This creates what I call the &lt;strong&gt;observability sustainability paradox&lt;/strong&gt; : the more data we collect to gain insight, the more energy and resources we consume to store, process, and query that data. I talked about it for the first time at Scale23x conference, in a &lt;a href="https://www.socallinuxexpo.org/scale/23x/presentations/green-observability-what-needs-shuffle-open-source" rel="noopener noreferrer"&gt;presentation&lt;/a&gt; I delivered for the &lt;a href="https://www.socallinuxexpo.org/scale/23x/special-event/cloud-native-day-la" rel="noopener noreferrer"&gt;Cloud Native Days LA&lt;/a&gt; track.&lt;/p&gt;

&lt;p&gt;At first, this trade-off feels acceptable. Visibility is critical. But over time, many systems quietly drift into excess:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;metrics that are never queried,&lt;/li&gt;
&lt;li&gt;logs retained far beyond their usefulness,&lt;/li&gt;
&lt;li&gt;traces stored “just in case,”&lt;/li&gt;
&lt;li&gt;dashboards nobody maintains anymore,&lt;/li&gt;
&lt;li&gt;and pipelines that exist simply because they were never re-evaluated.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Eventually, observability stops being just a tool for understanding systems and becomes a system of its own — with its own operational overhead and environmental footprint.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fahf76x590ghks0yodgdb.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fahf76x590ghks0yodgdb.jpeg" width="760" height="1013"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Applying Green Software Principles to Observability
&lt;/h3&gt;

&lt;p&gt;This is where &lt;a href="https://greensoftware.foundation/" rel="noopener noreferrer"&gt;green software&lt;/a&gt; thinking becomes relevant.&lt;/p&gt;

&lt;p&gt;The goal is not to reduce observability or sacrifice reliability. &lt;strong&gt;The goal is to design telemetry with intention&lt;/strong&gt;  — to treat observability systems as software that should also be efficient, not just functional.&lt;/p&gt;

&lt;p&gt;In practice, this means shifting the default mindset from “collect everything” to “collect what is useful.”&lt;/p&gt;

&lt;p&gt;It starts with simple but important questions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Do we actually use this metric in decision-making?&lt;/li&gt;
&lt;li&gt;Does this dashboard influence operational behavior?&lt;/li&gt;
&lt;li&gt;Is this alert actionable, or just informational noise?&lt;/li&gt;
&lt;li&gt;Can we reduce retention without losing critical insight?&lt;/li&gt;
&lt;li&gt;Are we collecting data because it is valuable, or because it is easy?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These questions are often uncomfortable because they challenge default engineering habits. But they are necessary if we want sustainable systems.&lt;/p&gt;

&lt;p&gt;The &lt;a href="https://greensoftware.foundation/standards/sci/" rel="noopener noreferrer"&gt;Green Software Foundation&lt;/a&gt; has been driving similar thinking in broader software design: minimize waste, optimize resource usage, and consider environmental impact as a first-class constraint. &lt;strong&gt;Observability systems should not be excluded from that conversation&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Lessons From Practice
&lt;/h3&gt;

&lt;p&gt;From a practitioner’s perspective, the most interesting insight is that reducing telemetry does not reduce observability quality — it often improves it.&lt;/p&gt;

&lt;p&gt;In multiple systems I’ve worked with or observed, teams saw better outcomes after deliberately reducing noise in their observability stack. Not by removing critical signals, but by removing unnecessary ones.&lt;/p&gt;

&lt;p&gt;Common improvements included:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;reducing high-cardinality metrics to meaningful dimensions only,&lt;/li&gt;
&lt;li&gt;sampling traces instead of capturing every request,&lt;/li&gt;
&lt;li&gt;shortening retention periods for non-critical data,&lt;/li&gt;
&lt;li&gt;simplifying dashboards that had grown organically over time,&lt;/li&gt;
&lt;li&gt;and removing alerts that did not lead to action.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The result was consistent: less noise, faster debugging, and clearer operational signals.&lt;/p&gt;

&lt;p&gt;One of the most counterintuitive outcomes is that observability becomes more effective when it is more constrained. When everything is monitored, nothing stands out. When telemetry is intentional, anomalies become easier to detect.&lt;/p&gt;

&lt;h3&gt;
  
  
  Technical Strategies for Sustainable Observability
&lt;/h3&gt;

&lt;p&gt;At the technical level, sustainable observability is about rethinking the full telemetry lifecycle: generation, collection, storage, and querying.&lt;/p&gt;

&lt;p&gt;A few practical approaches include:&lt;/p&gt;

&lt;p&gt;Metrics should prioritize signal over dimensional explosion. High-cardinality labels should be used carefully, not by default. Logs should be structured but not overly verbose, and retention policies should reflect actual usage patterns rather than theoretical requirements.&lt;/p&gt;

&lt;p&gt;Tracing benefits significantly from sampling strategies. Capturing every request is rarely necessary at scale, and intelligent sampling can preserve visibility into system behavior while dramatically reducing overhead.&lt;/p&gt;

&lt;p&gt;In Kubernetes environments, there are additional optimization opportunities:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;tuning scraping intervals to match actual needs,&lt;/li&gt;
&lt;li&gt;avoiding duplicate instrumentation across layers,&lt;/li&gt;
&lt;li&gt;aggregating metrics closer to ingestion,&lt;/li&gt;
&lt;li&gt;reducing redundant exporters and sidecars,&lt;/li&gt;
&lt;li&gt;and optimizing collector pipelines for efficiency.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Another emerging pattern is shifting some aggregation earlier in the pipeline, reducing the volume of data that needs to be stored or queried later. These kinds of architectural decisions often have outsized impact on both performance and cost.&lt;/p&gt;

&lt;p&gt;Importantly, these optimizations do not just reduce resource consumption — they usually improve usability. Cleaner dashboards, faster queries, and reduced alert fatigue tend to follow naturally.&lt;/p&gt;

&lt;h3&gt;
  
  
  Open Source Tools Driving Change
&lt;/h3&gt;

&lt;p&gt;Open source ecosystems are increasingly important in making sustainable observability practical.&lt;/p&gt;

&lt;p&gt;Projects like &lt;a href="https://opentelemetry.io/docs/what-is-opentelemetry/" rel="noopener noreferrer"&gt;OpenTelemetry&lt;/a&gt; provide the foundation for standardized telemetry generation and allow teams to implement sampling, filtering, and aggregation strategies consistently across systems.&lt;/p&gt;

&lt;p&gt;At the infrastructure level, tools like &lt;a href="https://www.cncf.io/projects/kepler/" rel="noopener noreferrer"&gt;Kepler&lt;/a&gt; are starting to make energy consumption measurable in cloud-native environments. This is a critical step, because what cannot be measured is rarely optimized.&lt;/p&gt;

&lt;p&gt;These tools make it possible to connect observability decisions directly to resource and energy impact, rather than treating sustainability as an abstract concept.&lt;/p&gt;

&lt;p&gt;However, most of the ecosystem is still evolving toward this awareness. Many default configurations still favor high-volume telemetry collection, and optimization is often left entirely to individual teams.&lt;/p&gt;

&lt;h3&gt;
  
  
  Benefits Beyond Sustainability
&lt;/h3&gt;

&lt;p&gt;While environmental impact is an important motivation, sustainable observability also delivers very practical engineering benefits.&lt;/p&gt;

&lt;p&gt;Reducing telemetry noise improves system clarity. Engineers spend less time filtering irrelevant signals and more time focusing on meaningful ones. Incident response becomes faster because dashboards are simpler and more relevant. Alert fatigue decreases because signals are more intentional.&lt;/p&gt;

&lt;p&gt;Operational costs also drop — not just in storage, but in compute, query performance, and pipeline complexity.&lt;/p&gt;

&lt;p&gt;In many cases, sustainability and operational excellence reinforce each other rather than conflict. Efficient observability systems tend to be easier to maintain, debug, and scale.&lt;/p&gt;

&lt;h3&gt;
  
  
  Culture, Measurement, and Accountability
&lt;/h3&gt;

&lt;p&gt;Technology alone is not enough. Sustainable observability also requires cultural change.&lt;/p&gt;

&lt;p&gt;Teams need to treat observability systems as first-class software systems that deserve regular review and optimization. Telemetry should not accumulate indefinitely without ownership or evaluation.&lt;/p&gt;

&lt;p&gt;One of the most useful shifts is introducing visibility into observability itself:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How much telemetry are we generating?&lt;/li&gt;
&lt;li&gt;What is actually being queried?&lt;/li&gt;
&lt;li&gt;Which dashboards are still relevant?&lt;/li&gt;
&lt;li&gt;Which metrics are never used?&lt;/li&gt;
&lt;li&gt;What is the cost of our monitoring stack?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Even simple awareness of these questions changes behavior over time.&lt;/p&gt;

&lt;p&gt;Sustainability also requires challenging assumptions. Many systems grow telemetry by default rather than by design. Revisiting those defaults regularly is essential to avoid long-term accumulation of waste.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Role of the Community
&lt;/h3&gt;

&lt;p&gt;The observability community has a key role to play in making this shift real.&lt;/p&gt;

&lt;p&gt;Too often, the focus is on scale and volume rather than efficiency and signal quality. Instrumentation tends to grow faster than governance. And while tools exist to help manage telemetry, best practices around reducing waste are still not consistently applied.&lt;/p&gt;

&lt;p&gt;The conversations I had after speaking at FOSDEM reinforced this. Many practitioners are already thinking in this direction, but there is still a gap between awareness and standard practice.&lt;/p&gt;

&lt;p&gt;Community-driven efforts — whether through open source projects, shared patterns, or better defaults — can help close that gap. This includes encouraging smarter sampling strategies, better retention defaults, and more explicit thinking about the cost of telemetry.&lt;/p&gt;

&lt;p&gt;If observability is becoming a core part of system architecture (which it is), then its environmental and operational footprint should be part of the design conversation from the beginning.&lt;/p&gt;

&lt;h3&gt;
  
  
  Rethinking What We Actually Need to Observe
&lt;/h3&gt;

&lt;p&gt;I still believe observability is one of the most important disciplines in modern software engineering.&lt;/p&gt;

&lt;p&gt;The best observability systems I’ve seen are not the ones with the most metrics or the most dashboards. They are the ones where every signal exists for a reason, where telemetry is intentional, and where engineers actively understand what they are collecting — and why.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://devops.com/the-green-side-of-observability-why-less-data-can-mean-more-insight/" rel="noopener noreferrer"&gt;Sustainable observability&lt;/a&gt; is not about collecting less for the sake of it. It is about collecting better. It is about ensuring that what we observe is meaningful enough to justify its cost.&lt;/p&gt;

&lt;p&gt;Because in the end, the goal was never to build the biggest telemetry pipeline. The goal was to &lt;strong&gt;understand our systems&lt;/strong&gt; well enough to operate them confidently and responsibly.&lt;/p&gt;

&lt;p&gt;You can find directly my previous presentations on this topic and my entire talks’ portofolio at &lt;a href="https://github.com/didiViking/Conferences_Talks" rel="noopener noreferrer"&gt;https://github.com/didiViking/Conferences_Talks&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6z6xkjrv1375pj7v4274.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6z6xkjrv1375pj7v4274.jpeg" width="800" height="1066"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Peace from Spain&lt;/em&gt;&lt;/p&gt;

</description>
      <category>sustainability</category>
      <category>observability</category>
      <category>softwaredevelopment</category>
      <category>womenintech</category>
    </item>
    <item>
      <title>Top 10 Things Not to Do at KubeCon (If You Want to Actually Enjoy It)</title>
      <dc:creator>didiViking</dc:creator>
      <pubDate>Sat, 28 Mar 2026 18:21:46 +0000</pubDate>
      <link>https://dev.to/didiviking/top-10-things-not-to-do-at-kubecon-if-you-want-to-actually-enjoy-it-3bc2</link>
      <guid>https://dev.to/didiviking/top-10-things-not-to-do-at-kubecon-if-you-want-to-actually-enjoy-it-3bc2</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fodf126y5p6xp2n74vddh.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fodf126y5p6xp2n74vddh.jpeg" width="800" height="1066"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Amsterdam canal photo by Diana Todea&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This week, I attended my second consecutive KubeCon, KubeCon EU Amsterdam and it definitely felt like a special one.&lt;/p&gt;

&lt;p&gt;I experienced multiple sides of the community: I attended Cloud Native Rejekts and the Maintainer Summit, spaces that are always rich in honest conversations and less crowded than the KubeCon event.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ck1dxw8pl9lpvg4k90x.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ck1dxw8pl9lpvg4k90x.jpeg" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;During the Maintainer Summit, I participated at the OpenTelemetry Prometheus unconference session, which I really enjoyed as it aimed to address the current pain points coming from both communities.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuod7glhxhthujj1epk3w.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuod7glhxhthujj1epk3w.jpeg" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I spoke for the first time at both Platform Engineering Day and KubeCon itself.&lt;/p&gt;

&lt;p&gt;At Platform Engineering Day, I co-presented “Who Designed That Platform?” with Elif Samedin, a talk that sparked great discussions around platform ownership and developer experience.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5m2jkn78bhk9jytqsngt.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5m2jkn78bhk9jytqsngt.jpeg" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Introducing the idea of humans as a platform resonated with the audience and brought a lot of attention.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ficiv35na4odubgiqcoww.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ficiv35na4odubgiqcoww.jpeg" width="800" height="1068"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Then on KubeCon Day 1, I gave another talk on “A Simple Guide to Kubernetes Observability,” bringing this topic to a broader, more beginner friendly audience.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvhxjecmiidp865409fjs.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvhxjecmiidp865409fjs.jpeg" width="800" height="547"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Day 2 was perhaps the most meaningful part of my experience: I led the first-ever CNCF Neurodiversity Community Hub session, helping amplify the mission of Merge-Forward.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fov75wybklqfbukwp6u9q.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fov75wybklqfbukwp6u9q.jpeg" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The engagement, openness, and energy in that room made it clear how important these conversations are and how much space there is to grow.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0expnvgxegz5hlmxb0qu.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0expnvgxegz5hlmxb0qu.jpeg" width="800" height="1066"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;One of the highlights of the week was reconnecting with the community from &lt;a href="https://cloudnativedays.ro/" rel="noopener noreferrer"&gt;Cloud Native Days Romania&lt;/a&gt;. We ended up doing what KubeCon does best, spending time together in hallway conversations, sharing ideas, catching up, and just enjoying being part of the same ecosystem in a different city.&lt;/p&gt;

&lt;p&gt;Moments like these remind me that the real value of these events is always the people. And of course, we’re already looking forward to welcoming everyone at the next edition of Cloud Native Days Romania, happening on May 18–19 in Bucharest.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4p6hc7iavfu6ms48ulxt.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4p6hc7iavfu6ms48ulxt.jpeg" width="800" height="451"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmozr5ku0ka5av98s9bpa.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmozr5ku0ka5av98s9bpa.jpeg" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Experiencing KubeCon from both sides — attendee and speaker — gave me a completely different perspective. And, just like in previous events, I still found myself relearning some lessons the hard way: sore feet from the wrong shoes, exhaustion from overpacked schedules.&lt;/p&gt;

&lt;p&gt;Overall, KubeCon can be overwhelming even for experienced attendees. So instead of giving you a polished checklist of what to do, I’ll next share something far more useful: the mistakes you should avoid.&lt;/p&gt;

&lt;h3&gt;
  
  
  KubeCon is one of those events that feels like drinking from a firehose — thousands of attendees, hundreds of talks, endless booths, side events, and after-parties. It’s easy to fall into the trap of trying to do everything… and end up enjoying nothing.
&lt;/h3&gt;

&lt;p&gt;Here are the top 10 things you should absolutely NOT do at KubeCon, if you want to survive, learn, and maybe even have a great time.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Don’t Wear Uncomfortable Shoes
&lt;/h3&gt;

&lt;p&gt;Seriously, this is not a fashion show.&lt;/p&gt;

&lt;p&gt;You’ll walk a lot. Between halls, booths, side events, and spontaneous hallway chats, you can easily hit 25,000–40,000 steps per day or more.&lt;/p&gt;

&lt;p&gt;Dress for comfort, not to impress.&lt;br&gt;&lt;br&gt;
Nobody remembers your outfit, but your feet will remember bad decisions. It happened to me at this KubeCon so I make it the first step to take into consideration.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Don’t Create a Packed, Minute-by-Minute Schedule
&lt;/h3&gt;

&lt;p&gt;It’s tempting to plan every talk, every meetup, every coffee.&lt;/p&gt;

&lt;p&gt;Don’t.&lt;/p&gt;

&lt;p&gt;KubeCon is chaotic in the best way. The most valuable moments often come from: unexpected conversations, last-minute invites, random hallway discussions.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg719ivuyc8mohvsq55wu.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg719ivuyc8mohvsq55wu.jpeg" width="800" height="600"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Catching our breath with Carol Valencia, CNCF Ambassador&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Leave at least 50% of your schedule open. Think of it as “strategic spontaneity.”&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Don’t Sit in Talks All Day
&lt;/h3&gt;

&lt;p&gt;Yes, the talks are great.&lt;br&gt;&lt;br&gt;
No, you shouldn’t attend 8 hours of them back-to-back.&lt;/p&gt;

&lt;p&gt;Here’s the truth: most talks (if not all) are recorded, you won’t retain everything, you will miss networking opportunities.&lt;/p&gt;

&lt;p&gt;Hand-pick a few must-see talks, then spend the rest of your time actually talking to people, visiting booths, asking those questions you’ve been waiting for this entire time.&lt;/p&gt;

&lt;p&gt;A couple of great talks I attended were “Retroactive sampling with OpenTelemetry: cut 90% distributed tracing bandwidth usage” by Zhu Jiekun and Roman Khavronenko from VictoriaMetrics.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqpyykf6pdkb815ktguxq.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqpyykf6pdkb815ktguxq.jpeg" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The second talk was “Cutting metrics traffic, cutting costs: the AZ-aware observability blueprint” by Iris Dyrmishi and Rodrigo Fior Kuntzer from Miro.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5nidzy9wlkhdy27s0uth.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5nidzy9wlkhdy27s0uth.jpeg" width="800" height="1066"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Don’t Ignore Networking (It’s the Real Event)
&lt;/h3&gt;

&lt;p&gt;KubeCon is less about Kubernetes and more about people who build with it.&lt;/p&gt;

&lt;p&gt;If you spend all your time consuming content, you’re missing the real value.&lt;/p&gt;

&lt;p&gt;Don’t stick only with people you already know, avoid conversations because “it feels awkward”.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4tu7p4ordlg8pq0nwo9o.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4tu7p4ordlg8pq0nwo9o.jpeg" width="800" height="600"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Friends from Elastic&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Instead ask what people are working on, share your own challenges, follow curiosity, not status.&lt;/p&gt;

&lt;p&gt;Reconnecting with old friends, colleagues and having honest conversations it’s worth more in reality.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Don’t Skip the Expo Floor
&lt;/h3&gt;

&lt;p&gt;It’s easy to dismiss booths as “just vendors.” Big mistake.&lt;/p&gt;

&lt;p&gt;The expo floor is where you can: see real-world demos, talk to engineers (not just marketers), discover tools you didn’t know you needed.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmo12h4fg0y21kp8pgqbf.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmo12h4fg0y21kp8pgqbf.jpeg" width="800" height="600"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Users asking questions at the VictoriaMetrics booth&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Don’t just grab swag — ask questions.&lt;/p&gt;

&lt;h3&gt;
  
  
  6. Don’t Forget to Explore the City
&lt;/h3&gt;

&lt;p&gt;KubeCon happens in amazing cities and yet many attendees see only the conference center. Don’t be that person.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuxby1u3ikt3nisa7a17x.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuxby1u3ikt3nisa7a17x.jpeg" width="760" height="1013"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Make time to try local food, walk around neighborhoods, visit landmarks. You’ll remember that incredible local dish, that sunset walk, that random café conversation.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx69tj8jio9t1y2r7gcjz.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx69tj8jio9t1y2r7gcjz.jpeg" width="800" height="1066"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  7. Don’t Overcommit to Evening Events
&lt;/h3&gt;

&lt;p&gt;Every night, there are dozens of meetups, parties, dinners, “must-attend” gatherings.&lt;/p&gt;

&lt;p&gt;Trying to attend all of them is a fast track to burnout.&lt;/p&gt;

&lt;p&gt;Pick 1–2 meaningful events per night.&lt;br&gt;&lt;br&gt;
Then rest. Because day 2 exhaustion is very real. It happened to the best of us.&lt;/p&gt;

&lt;h3&gt;
  
  
  8. Don’t Be Afraid to Skip Things
&lt;/h3&gt;

&lt;p&gt;You will miss things. Talks. Meetups. Conversations. That’s normal.&lt;/p&gt;

&lt;p&gt;What’s not normal is trying to compensate by overloading yourself.&lt;/p&gt;

&lt;p&gt;Give yourself permission to skip.&lt;br&gt;&lt;br&gt;
Energy is your most valuable resource at KubeCon. Saying no to after parties or dinner and just recharging your body and mind for the next day is actually a smart move.&lt;/p&gt;

&lt;p&gt;For me, taking the Monday evening off to recharge was the best thing. I made sure to allow my body and mind to embrace the intense KubeCon that started on Tuesday.&lt;/p&gt;

&lt;h3&gt;
  
  
  9. Don’t Stay Only in Your Comfort Zone
&lt;/h3&gt;

&lt;p&gt;It’s easy to talk only to people from your company, attend only familiar topics, stick to what you already know.&lt;/p&gt;

&lt;p&gt;But KubeCon is the perfect place to explore adjacent technologies, hear different perspectives, challenge your assumptions.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwriytsj9zchx9cmfl1es.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwriytsj9zchx9cmfl1es.jpeg" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For me, hanging out at the updates on OpenTelemetry panel was a break from the technical talks finding out what this amazing community is currently building but also new ways one can get involved.&lt;/p&gt;

&lt;h3&gt;
  
  
  10. Don’t Forget to Take Care of Yourself
&lt;/h3&gt;

&lt;p&gt;This is the one people underestimate the most and I’ve definitely learned it the hard way.&lt;br&gt;&lt;br&gt;
Between long days, constant walking, irregular meals, and late nights, your body takes a hit.&lt;br&gt;&lt;br&gt;
Don’t ignore signs of fatigue, skip meals or hydration, assume you’ll “push through it”. And very practically: don’t forget your medicine if you need any, bring a lightweight personal kit (painkillers, band-aids, electrolytes, etc.).&lt;br&gt;&lt;br&gt;
It sounds simple, but it can make the difference between enjoying the event and just surviving it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdjxp9x0xsiutc59v6v91.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdjxp9x0xsiutc59v6v91.jpeg" width="800" height="1066"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Best hang out with Adriana Villela, CNCF Ambassador and OpenTelemetry Community Manager&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Final Thoughts
&lt;/h3&gt;

&lt;p&gt;KubeCon is a marathon, not a sprint.&lt;/p&gt;

&lt;p&gt;If you stay flexible, prioritize people over sessions, take care of your energy, leave space for discovery, you won’t just survive it, you’ll actually enjoy it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc360o1lpzdw6rhm9i3nm.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc360o1lpzdw6rhm9i3nm.jpeg" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And maybe, just maybe, you’ll come back with something more valuable than notes: new ideas, new connections and a fresh perspective on your work.&lt;/p&gt;

</description>
      <category>diversity</category>
      <category>observability</category>
      <category>opensource</category>
      <category>cloudnative</category>
    </item>
    <item>
      <title>VictoriaMetrics playgrounds any dev should try in 2026</title>
      <dc:creator>didiViking</dc:creator>
      <pubDate>Tue, 30 Dec 2025 09:39:58 +0000</pubDate>
      <link>https://dev.to/didiviking/victoriametrics-playgrounds-any-dev-should-try-in-2026-44fm</link>
      <guid>https://dev.to/didiviking/victoriametrics-playgrounds-any-dev-should-try-in-2026-44fm</guid>
      <description>&lt;p&gt;&lt;a href="https://victoriametrics.com/" rel="noopener noreferrer"&gt;VictoriaMetrics&lt;/a&gt; provides a rich set of public playgrounds that allow you to explore the full observability stack - metrics, logs, traces - and even query migration tools without installing or configuring anything locally. These playgrounds are backed by real VictoriaMetrics components and real data, making them ideal for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Learning VictoriaMetrics query languages&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Trying dashboards and queries interactively&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Validating migration paths&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Demonstrating features in talks or workshops&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Experimenting with AI-driven observability via MCP&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In this post, we’ll walk through each available playground, explain what it does and link to the relevant GitHub repositories behind it.&lt;/p&gt;

&lt;h2&gt;
  
  
  VictoriaMetrics Playground (VMUI)
&lt;/h2&gt;

&lt;p&gt;🔗 &lt;a href="https://play.victoriametrics.com/" rel="noopener noreferrer"&gt;https://play.victoriametrics.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnb8q9y8no8204gzkek73.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnb8q9y8no8204gzkek73.png" alt=" " width="800" height="384"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is the primary playground for VictoriaMetrics metrics, powered by &lt;a href="https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#vmui" rel="noopener noreferrer"&gt;VMUI&lt;/a&gt; and backed by a VictoriaMetrics cluster installation. It is available for testing the query engine, relabeling debugger, other tools and pages provided by VMUI.&lt;/p&gt;

&lt;p&gt;This playground is the best starting point for understanding how &lt;a href="https://victoriametrics.com/products/open-source/" rel="noopener noreferrer"&gt;VictoriaMetrics&lt;/a&gt; stores and queries metrics at scale.&lt;/p&gt;

&lt;p&gt;GitHub repository:&lt;br&gt;
&lt;a href="https://github.com/VictoriaMetrics/VictoriaMetrics" rel="noopener noreferrer"&gt;https://github.com/VictoriaMetrics/VictoriaMetrics&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Grafana VictoriaMetrics Playground
&lt;/h2&gt;

&lt;p&gt;🔗 &lt;a href="https://play-grafana.victoriametrics.com/" rel="noopener noreferrer"&gt;https://play-grafana.victoriametrics.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fguv9nigfe1sdcqp2eweq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fguv9nigfe1sdcqp2eweq.png" alt=" " width="800" height="398"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This playground provides a hosted Grafana instance preconfigured with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;VictoriaMetrics as a metrics data source&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;VictoriaLogs as a logs data source&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here you can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Explore real dashboards built on top of VictoriaMetrics&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;See how MetricsQL and LogsQL are used in Grafana panels&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Learn dashboard design and visualization best practices&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It’s particularly useful if you already use Grafana and want to see how VictoriaMetrics integrates into existing workflows.&lt;/p&gt;

&lt;p&gt;Relevant repositories:&lt;/p&gt;

&lt;p&gt;VictoriaMetrics Grafana datasource: &lt;a href="https://github.com/VictoriaMetrics/victoriametrics-datasource" rel="noopener noreferrer"&gt;https://github.com/VictoriaMetrics/victoriametrics-datasource&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;VictoriaLogs Grafana datasource: &lt;a href="https://github.com/VictoriaMetrics/victorialogs-datasource" rel="noopener noreferrer"&gt;https://github.com/VictoriaMetrics/victorialogs-datasource&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  VictoriaLogs Playground (LogsQL)
&lt;/h2&gt;

&lt;p&gt;🔗 &lt;a href="https://play-vmlogs.victoriametrics.com/" rel="noopener noreferrer"&gt;https://play-vmlogs.victoriametrics.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3rn0fdmqdixywvdo43fg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3rn0fdmqdixywvdo43fg.png" alt=" " width="800" height="359"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This playground focuses on &lt;a href="https://victoriametrics.com/products/victorialogs/" rel="noopener noreferrer"&gt;VictoriaLogs&lt;/a&gt; and it is available for testing the query engine on demo logs set.&lt;br&gt;
The playground demonstrates how VictoriaLogs handles high-volume log data with predictable performance and low operational overhead.&lt;/p&gt;

&lt;p&gt;GitHub repository:&lt;br&gt;
&lt;a href="https://github.com/VictoriaMetrics/VictoriaLogs" rel="noopener noreferrer"&gt;https://github.com/VictoriaMetrics/VictoriaLogs&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  LogQL → LogsQL Playground (Migration Assistant)
&lt;/h2&gt;

&lt;p&gt;🔗 &lt;a href="https://play-logql.victoriametrics.com/" rel="noopener noreferrer"&gt;https://play-logql.victoriametrics.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyvxe4v2k2w6nb038ms2e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyvxe4v2k2w6nb038ms2e.png" alt=" " width="800" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For teams migrating from Grafana Loki, this playground provides a LogQL to &lt;a href="https://docs.victoriametrics.com/victorialogs/logsql/" rel="noopener noreferrer"&gt;LogsQL&lt;/a&gt;, the VictoriaLogs query language, translation tool, which automatically converts Loki queries to VictoriaLogs queries.&lt;/p&gt;

&lt;p&gt;This significantly reduces friction when adopting VictoriaLogs in environments already using Loki.&lt;/p&gt;

&lt;p&gt;GitHub repository:&lt;br&gt;
&lt;a href="https://github.com/VictoriaMetrics-Community/logql-to-logsql" rel="noopener noreferrer"&gt;https://github.com/VictoriaMetrics-Community/logql-to-logsql&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Documentation:&lt;br&gt;
&lt;a href="https://docs.victoriametrics.com/victorialogs/logql-to-logsql/" rel="noopener noreferrer"&gt;https://docs.victoriametrics.com/victorialogs/logql-to-logsql/&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  VictoriaTraces Playground
&lt;/h2&gt;

&lt;p&gt;🔗 &lt;a href="https://play-vtraces.victoriametrics.com/" rel="noopener noreferrer"&gt;https://play-vtraces.victoriametrics.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj0d9mbikjgx3fbjgh3ar.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj0d9mbikjgx3fbjgh3ar.png" alt=" " width="800" height="341"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This playground showcases &lt;a href="https://docs.victoriametrics.com/victoriatraces" rel="noopener noreferrer"&gt;VictoriaTraces&lt;/a&gt;, the VictoriaMetrics backend for distributed tracing and it is available for testing the query engine on demo traces set.&lt;/p&gt;

&lt;p&gt;GitHub repository:&lt;br&gt;
&lt;a href="https://github.com/VictoriaMetrics/VictoriaTraces" rel="noopener noreferrer"&gt;https://github.com/VictoriaMetrics/VictoriaTraces&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  VMAnomaly Playground (Anomaly Detection)
&lt;/h2&gt;

&lt;p&gt;🔗 &lt;a href="https://play-vmanomaly.victoriametrics.com/metrics/vmui/" rel="noopener noreferrer"&gt;https://play-vmanomaly.victoriametrics.com/metrics/vmui/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9wrorvbbe6fqdav7d5xw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9wrorvbbe6fqdav7d5xw.png" alt=" " width="800" height="381"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The &lt;a href="https://victoriametrics.com/products/enterprise/anomaly-detection/" rel="noopener noreferrer"&gt;VMAnomaly&lt;/a&gt; playground demonstrates automatic anomaly detection on time-series data using VictoriaMetrics. It allows you to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Explore metrics enriched with an anomaly_score&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Visualize anomalies directly in VMUI&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Understand how anomaly detection integrates with MetricsQL&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Learn how anomaly scores can be used for alerting (for example with vmalert)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;VMAnomaly continuously analyzes metric behavior and produces anomaly scores that behave like any other time series in VictoriaMetrics.&lt;/p&gt;

&lt;p&gt;Distribution &amp;amp; setup:&lt;/p&gt;

&lt;p&gt;VMAnomaly container: &lt;a href="https://hub.docker.com/r/victoriametrics/vmanomaly" rel="noopener noreferrer"&gt;https://hub.docker.com/r/victoriametrics/vmanomaly&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Helm charts (including anomaly setups): &lt;a href="https://github.com/VictoriaMetrics/helm-charts" rel="noopener noreferrer"&gt;https://github.com/VictoriaMetrics/helm-charts&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  VictoriaLogs SQL to LogsQL playground
&lt;/h2&gt;

&lt;p&gt;🔗 &lt;a href="https://play-sql.victoriametrics.com/" rel="noopener noreferrer"&gt;https://play-sql.victoriametrics.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvi6b7cvcungzy9b3qmv6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvi6b7cvcungzy9b3qmv6.png" alt=" " width="800" height="481"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This playground enables you to query data from VictoriaLogs instance or just translate SQL to LogsQL without querying.&lt;/p&gt;

&lt;p&gt;GitHub repository:&lt;br&gt;
&lt;a href="https://github.com/VictoriaMetrics/sql-to-logsql" rel="noopener noreferrer"&gt;https://github.com/VictoriaMetrics/sql-to-logsql&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Bonus point: VictoriaMetrics MCP server
&lt;/h2&gt;

&lt;p&gt;If you are a fan of using MCP servers then you should definitely try the official VictoriaMetrics MCP Server, which enables AI-driven interaction with observability data. This MCP server allows you to use almost all read-only APIs of VictoriaMetrics, basically all the functions available in VMUI:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Querying metrics and exploring data (even drawing graphs if your client supports it)&lt;/li&gt;
&lt;li&gt;Listing and exporting available metrics, labels, labels values and entire series&lt;/li&gt;
&lt;li&gt;Analyzing and testing your alerting and recording rules and alerts&lt;/li&gt;
&lt;li&gt;Showing parameters of your VictoriaMetrics instance&lt;/li&gt;
&lt;li&gt;Exploring cardinality of your data and metrics usage statistics&lt;/li&gt;
&lt;li&gt;Analyzing, tracing, prettifying and explaining your queries&lt;/li&gt;
&lt;li&gt;Debugging your relabeling rules, downsampling and retention policy configurations&lt;/li&gt;
&lt;li&gt;Integration with &lt;a href="https://victoriametrics.com/products/cloud/" rel="noopener noreferrer"&gt;VictoriaMetrics Cloud&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fihdj4003qbbdbkw02hsw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fihdj4003qbbdbkw02hsw.png" alt=" " width="800" height="454"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This makes it possible for MCP-compatible tools (such as Cursor, Claude Desktop, or VS Code integrations) to query and reason about observability data conversationally.&lt;/p&gt;

&lt;p&gt;GitHub repository:&lt;br&gt;
&lt;a href="https://github.com/VictoriaMetrics-Community/mcp-victoriametrics" rel="noopener noreferrer"&gt;https://github.com/VictoriaMetrics-Community/mcp-victoriametrics&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Video how to use VictoriaMetrics MCP server: &lt;a href="https://www.youtube.com/watch?v=1k7xgbRi1k0" rel="noopener noreferrer"&gt;https://www.youtube.com/watch?v=1k7xgbRi1k0&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Run Your Own Local Playgrounds&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In addition to these hosted playgrounds, VictoriaMetrics provides Docker and Helm-based resources you can run locally and start playing with the ecosystem:&lt;br&gt;
&lt;a href="https://hub.docker.com/u/victoriametrics" rel="noopener noreferrer"&gt;https://hub.docker.com/u/victoriametrics&lt;/a&gt;&lt;br&gt;
&lt;a href="https://github.com/VictoriaMetrics/helm-charts" rel="noopener noreferrer"&gt;https://github.com/VictoriaMetrics/helm-charts&lt;/a&gt;&lt;br&gt;
&lt;a href="https://docs.victoriametrics.com/victoriametrics/quick-start/" rel="noopener noreferrer"&gt;https://docs.victoriametrics.com/victoriametrics/quick-start/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let me know which one was your favorite playground or if you have any feedback for improvement, ping me a comment here or you can find me on &lt;a href="https://www.linkedin.com/in/diana-todea-b2a79968/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt; or &lt;a href="https://github.com/didiViking" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>observability</category>
      <category>victoriametrics</category>
      <category>victorialogs</category>
      <category>victoriatraces</category>
    </item>
    <item>
      <title>The Unofficial Guide to Contributing to OpenTelemetry — where to look and who to talk to!</title>
      <dc:creator>didiViking</dc:creator>
      <pubDate>Wed, 17 Dec 2025 09:51:50 +0000</pubDate>
      <link>https://dev.to/didiviking/the-unofficial-guide-to-contributing-to-opentelemetry-where-to-look-and-who-to-talk-to-2nno</link>
      <guid>https://dev.to/didiviking/the-unofficial-guide-to-contributing-to-opentelemetry-where-to-look-and-who-to-talk-to-2nno</guid>
      <description>&lt;p&gt;&lt;a href="https://opentelemetry.io/" rel="noopener noreferrer"&gt;OpenTelemetry&lt;/a&gt; provides the tools and standards to collect metrics, logs, and traces from applications and services. Getting started with contributions can feel overwhelming, so here is something people rarely tell you.&lt;/p&gt;

&lt;h2&gt;
  
  
  What People Don't Tell&amp;nbsp;You
&lt;/h2&gt;

&lt;p&gt;Jumping into OpenTelemetry is not just about learning the code, it is about understanding the community and the workflows behind it. Most guides focus on good first issues or setting up your local environment, but here is what you will not hear as often.&lt;br&gt;
Before checking out just OpenTelemetry look at the broader ecosystem. What other tools and observability projects are out there? Are they outdated or not? Can you start contributing there as well? How do they relate to OpenTelemetry? A little bit of research and history check never hurt anyone.&lt;/p&gt;

&lt;p&gt;Most devs don't know about this website, &lt;a href="https://clotributor.dev/" rel="noopener noreferrer"&gt;CLOTributor&lt;/a&gt;, that helps you check out good first issues from a number of Cloud Native projects. I love it! &lt;/p&gt;

&lt;h2&gt;
  
  
  Tips for beginners!
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Start small.&lt;/strong&gt; &lt;a href="https://opentelemetry.io/docs/contributing/" rel="noopener noreferrer"&gt;Contributing&lt;/a&gt; does not mean implementing core protocols on day one. Documentation improvements, examples, test fixes, and localization are all meaningful contributions. The codebase moves fast. APIs evolve, modules get refactored, and Collector pipelines change. Do not get discouraged if something you learned last week behaves differently today.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Community context matters.&lt;/strong&gt; A pull request is not just code, it is discussions, design decisions and feedback from maintainers. Reading issues and pull request threads is as educational as coding itself. Your experience is your superpower. Coming from Software Engineering or developer experience gives you a fresh perspective most contributors lack. You know what patterns are practical, what documentation is confusing and which examples actually help developers adopt OpenTelemetry.&lt;/p&gt;

&lt;h2&gt;
  
  
  Who to Talk&amp;nbsp;To
&lt;/h2&gt;

&lt;p&gt;When contributing to OpenTelemetry, engage with everyone in the community, but pay particular attention to &lt;strong&gt;maintainers, SIG members, senior contributors and approvers&lt;/strong&gt;. These are the people who review pull requests, set priorities and guide the direction of projects. Observing their discussions, asking thoughtful questions and seeking feedback will accelerate your learning and help your contributions align with real community needs.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where you find them?
&lt;/h2&gt;

&lt;p&gt;Useful CNCF Slack OpenTelemetry channels for new &lt;a href="https://opentelemetry.io/community/" rel="noopener noreferrer"&gt;contributors&lt;/a&gt;:&lt;br&gt;
&lt;code&gt;#otel-sig-end-user, #otel-devex, #opentelemetry-new-contributors, #otel-contributor-experience, #otel-docs-localization&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Understand the&amp;nbsp;Pieces&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;OpenTelemetry is more than a single library, it is a set of tools and standards. &lt;a href="https://opentelemetry.io/status/#language-apis--sdks" rel="noopener noreferrer"&gt;SDKs&lt;/a&gt; exist in multiple languages including Python, Java, and Go. The Collector gathers and forwards telemetry data, and instrumentation libraries connect your frameworks and protocols. Core protocols such as OTLP, gRPC, and HTTP define how telemetry moves across systems.&lt;/p&gt;

&lt;p&gt;If you want to go for something new and shiny in 2025, I recommend you two newer projects that are worth keeping an eye on.&lt;br&gt;
&lt;a href="https://github.com/open-telemetry/opentelemetry-injector" rel="noopener noreferrer"&gt;OTel Injector&lt;/a&gt; helps automatically instrument cloud-native applications, making it easier to collect telemetry without manually modifying code. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/open-telemetry/weaver" rel="noopener noreferrer"&gt;OTel Weaver&lt;/a&gt; simplifies configuring and managing telemetry pipelines, reducing friction for teams setting up observability stacks.&lt;br&gt;
You don't know what new and hot? Not a problem, I recommend you check out: &lt;a href="https://opentelemetry.io/blog/2025/" rel="noopener noreferrer"&gt;https://opentelemetry.io/blog/2025/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Contributing to these projects allows you to influence how developers adopt OpenTelemetry in real-world environments, which is particularly valuable for SREs and platform engineers who care about scalable and maintainable monitoring. &lt;strong&gt;We need your developer feedback!&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Direct Interviews/Feedback Sessions:&lt;/strong&gt; The End User SIG actively seeks users for interviews to improve the project. You can reach out to them on the &lt;code&gt;#otel-sig-end-user&lt;/code&gt; Slack channel to schedule a session.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Official Documentation: A Good Starting&amp;nbsp;Point&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The official documentation is solid but can be overwhelming if you do not know where to start. The OpenTelemetry site has quickstart guides per language, Collector setup instructions and SDK and instrumentation references. The GitHub repositories for the &lt;a href="https://github.com/open-telemetry/opentelemetry-collector" rel="noopener noreferrer"&gt;Collector&lt;/a&gt; and the &lt;a href="https://github.com/open-telemetry/opentelemetry-python" rel="noopener noreferrer"&gt;Python SDK&lt;/a&gt;, for example, contain READMEs, contributing guides and issues labeled good first issue, which provide context and entry points for new contributors.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Useful Unofficial Resources: the unconventional way&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Blogs, tutorials, YouTube talks, and conference sessions (e.g. &lt;strong&gt;KubeCon&lt;/strong&gt; past sessions on &lt;a href="https://www.youtube.com/@cncf/videos" rel="noopener noreferrer"&gt;CNCF YouTube channel&lt;/a&gt;) demonstrate real setups, including projects like OTel Injector. Community discussions on CNCF Slack channels often provide practical tips missing from the documentation. Contributions do not have to be code-related.&lt;br&gt;
&lt;a href="https://opentelemetry.io/docs/contributing/localization/" rel="noopener noreferrer"&gt;Localization&lt;/a&gt; of documentation, writing guides, creating sample applications, and providing feedback on instrumentation user experience are all highly valuable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Setting Up a Local&amp;nbsp;Sandbox&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Hands-on exploration is the fastest way to learn. Start by forking and cloning the repository.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;git clone https://github.com/your-username/opentelemetry-python.git&lt;br&gt;
cd opentelemetry-python&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Set up the development environment with pip install editable for Python or go build for Go. Run tests to verify your setup.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;pytest&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Experiment by adding a log, tweaking instrumentation or sending data to a local Grafana instance or your preferred observability frontend platform.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. Learn by Reading and Modifying Code&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Start with small tasks such as documentation or test fixes. Study recent pull requests to learn patterns and best practices. Explore test cases as they often illustrate intended behavior clearly. Open draft pull requests for minor improvements, even for localization or example tweaks.&lt;br&gt;
Be curious. Ask questions. Keep yourself motivated and challenged.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;6. Expanding Your Knowledge&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;CNCF learning resources and courses are helpful. The Linux Foundation &lt;a href="https://training.linuxfoundation.org/certification/opentelemetry-certified-associate-otca/" rel="noopener noreferrer"&gt;OpenTelemetry Certification&lt;/a&gt; provides a structured way to validate your understanding and gain deeper insight into the ecosystem. Hands-on projects, such as building a Collector with a sample application and Grafana pipeline, consolidate learning. Curated GitHub tutorials or Medium guides help fill gaps.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;7. Making Contributions Sustainable&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Sustaining contributions is about picking a focus and staying engaged. Choose a module, library, or project to focus on. Projects like OTel Injector and Weaver are particularly exciting because they address automation and pipeline management, which are pain points for many teams.&lt;/p&gt;

&lt;p&gt;Attend SIG meetings to understand ongoing development and decisions. Share what you learn through blogs, demos, or internal talks, and review others' pull requests or mentor newcomers. Contributions that improve usability, documentation, localization, or developer experience have a long-lasting impact even if they are not code-heavy. &lt;a href="https://github.com/open-telemetry/community" rel="noopener noreferrer"&gt;Community&lt;/a&gt; is key.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why you should listen to&amp;nbsp;me?
&lt;/h2&gt;

&lt;p&gt;In 2024, I was just like you. Novice, no prior Open Source or Cloud Native contribution. Then I got curious about OpenTelemetry. I joined the community and started adding my first contributions to the OpenTelemetry (OTCA) exam certification. Over the next 7–8 months, I have contributed and revised many exam questions, read official and unofficial documentation, paid attention to what my peers suggested. I showed up and I got myself motivated. With its general public release in January 2025, I became &lt;a href="https://sessionize.com/diana-todea/" rel="noopener noreferrer"&gt;OTCA Exam developer&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Then I POC-ed OpenTelemetry at my company. It failed to reach production. But I did collaborated with developers, we instrumented code together, we made our tests, we saw the OTel potential. We provided our developer &lt;a href="https://medium.com/@dianatodea/i-played-with-otel-and-i-liked-it-a69af868568b" rel="noopener noreferrer"&gt;feedback&lt;/a&gt; to the community.&lt;/p&gt;

&lt;p&gt;In January 2025, I contributed with my first commit and PR to the OpenTelemetry repository. Then soon followed other PRs and localization contributions. In August 2025, I created a new localization SIG for &lt;a href="https://opentelemetry.io/ro/docs/" rel="noopener noreferrer"&gt;Romanian&lt;/a&gt;. I asked new contributors to join and mentored them.&lt;/p&gt;

&lt;p&gt;In November 2025, at &lt;a href="https://medium.com/@dianatodea/how-i-made-the-most-of-kubecon-cloudnativecon-atlanta-2025-and-how-you-can-maximize-your-network-e9a79dd98169" rel="noopener noreferrer"&gt;KubeCon Atlanta&lt;/a&gt;, the community supported us just like we supported the community all this time. Along with some of my peers, I received the &lt;a href="https://opentelemetry.io/blog/2025/community-awards-winners/" rel="noopener noreferrer"&gt;OpenTelemetry 2025 Contributor Award&lt;/a&gt;.&lt;br&gt;
In 2025, I spoke at 9 different conferences about my journey with OpenTelemetry and how important motivation is for the long run contributors in cloud native.&lt;/p&gt;

&lt;p&gt;You can do it too. The OpenTelemetry community is extremely supportive and communicative. &lt;strong&gt;Be curious, ask questions, show up, diversify your contributions, stay motivated.&lt;/strong&gt; The results won't fail to appear!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Where to find me: &lt;a href="https://github.com/didiViking" rel="noopener noreferrer"&gt;https://github.com/didiViking&lt;/a&gt;&lt;br&gt;
Ask me questions: &lt;a href="https://www.linkedin.com/in/diana-todea-b2a79968/" rel="noopener noreferrer"&gt;https://www.linkedin.com/in/diana-todea-b2a79968/&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Article originally published on Medium, read &lt;a href="https://medium.com/@dianatodea/the-unofficial-guide-to-contributing-to-opentelemetry-where-to-look-and-who-to-talk-to-9de04ae75fe0" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>observability</category>
      <category>opentelemetry</category>
      <category>cloudnative</category>
      <category>developer</category>
    </item>
    <item>
      <title>The Unofficial Guide to Contributing to OpenTelemetry — where to look and who to talk to!</title>
      <dc:creator>didiViking</dc:creator>
      <pubDate>Tue, 16 Dec 2025 11:47:27 +0000</pubDate>
      <link>https://dev.to/didiviking/the-unofficial-guide-to-contributing-to-opentelemetry-where-to-look-and-who-to-talk-to-2i1b</link>
      <guid>https://dev.to/didiviking/the-unofficial-guide-to-contributing-to-opentelemetry-where-to-look-and-who-to-talk-to-2i1b</guid>
      <description>&lt;h3&gt;
  
  
  The Unofficial Guide to Contributing to OpenTelemetry — where to look and who to talk to!
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc03mmgjbwbrb9pi1ojxy.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc03mmgjbwbrb9pi1ojxy.jpeg" width="800" height="600"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Nuremberg, Germany&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://opentelemetry.io/" rel="noopener noreferrer"&gt;&lt;strong&gt;OpenTelemetry&lt;/strong&gt;&lt;/a&gt; provides the tools and standards to collect metrics, logs, and traces from applications and services. Getting started with contributions can feel overwhelming, so here is something people rarely tell you.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3e0ogdci38jq10nqb3um.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3e0ogdci38jq10nqb3um.png" width="799" height="430"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  What People Don’t Tell You
&lt;/h3&gt;

&lt;p&gt;Jumping into OpenTelemetry is not just about learning the code, it is about understanding the community and the workflows behind it. Most guides focus on good first issues or setting up your local environment, but here is what you will not hear as often.&lt;/p&gt;

&lt;p&gt;Before checking out just OpenTelemetry look at the broader ecosystem. What other tools and observability projects are out there? Are they outdated or not? Can you start contributing there as well? How do they relate to OpenTelemetry? A little bit of research and history check never hurt anyone.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Most devs don’t know about this website that helps you check out good first issues from a number of Cloud Native projects. I love it!&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://clotributor.dev/" rel="noopener noreferrer"&gt;CLOTributor&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Tips for beginners!
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Start small.&lt;/strong&gt; &lt;a href="https://opentelemetry.io/docs/contributing/" rel="noopener noreferrer"&gt;Contributing&lt;/a&gt; does not mean implementing core protocols on day one. Documentation improvements, examples, test fixes, and localization are all meaningful contributions. The codebase moves fast. APIs evolve, modules get refactored, and Collector pipelines change. Do not get discouraged if something you learned last week behaves differently today.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Community context matters.&lt;/strong&gt; A pull request is not just code, it is discussions, design decisions and feedback from maintainers. Reading issues and pull request threads is as educational as coding itself. Your experience is your superpower. Coming from Software Engineering or developer experience gives you a fresh perspective most contributors lack. You know what patterns are practical, what documentation is confusing and which examples actually help developers adopt OpenTelemetry.&lt;/p&gt;
&lt;h3&gt;
  
  
  Who to Talk To
&lt;/h3&gt;

&lt;p&gt;When contributing to OpenTelemetry, engage with everyone in the community, but pay particular attention to &lt;strong&gt;maintainers, SIG members, senior contributors and approvers&lt;/strong&gt;. These are the people who review pull requests, set priorities and guide the direction of projects. Observing their discussions, asking thoughtful questions and seeking feedback will accelerate your learning and help your contributions align with real community needs.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Where you find them?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://opentelemetry.io/community/" rel="noopener noreferrer"&gt;Community&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Useful CNCF Slack OpenTelemetry channels for new contributors:&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;#otel-sig-end-user, #otel-devex, #opentelemetry-new-contributors, #otel-contributor-experience, #otel-docs-localization&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3&gt;
  
  
  1. Understand the Pieces
&lt;/h3&gt;

&lt;p&gt;OpenTelemetry is more than a single library, it is a set of tools and standards. SDKs exist in multiple languages including Python, Java, and Go. The Collector gathers and forwards telemetry data, and instrumentation libraries connect your frameworks and protocols. Core protocols such as OTLP, gRPC, and HTTP define how telemetry moves across systems.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://opentelemetry.io/status/#language-apis--sdks" rel="noopener noreferrer"&gt;Status&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you want to go for something new and shiny in 2025, I recommend you two newer projects that are worth keeping an eye on.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/open-telemetry/opentelemetry-injector" rel="noopener noreferrer"&gt;&lt;strong&gt;OTel Injector&lt;/strong&gt;&lt;/a&gt; helps automatically instrument cloud-native applications, making it easier to collect telemetry without manually modifying code. &lt;a href="https://github.com/open-telemetry/weaver" rel="noopener noreferrer"&gt;&lt;strong&gt;OTel Weaver&lt;/strong&gt;&lt;/a&gt; simplifies configuring and managing telemetry pipelines, reducing friction for teams setting up observability stacks.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;You don’t know what new and hot? Not a problem, I recommend you check out:&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://opentelemetry.io/blog/2025/" rel="noopener noreferrer"&gt;2025&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Contributing to these projects allows you to influence how developers adopt OpenTelemetry in real-world environments, which is particularly valuable for SREs and platform engineers who care about scalable and maintainable monitoring. We need your developer feedback!&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Direct Interviews/Feedback Sessions:&lt;/strong&gt; The End User SIG actively seeks users for interviews to improve the project. You can reach out to them on the #otel-sig-end-user Slack channel to schedule a session.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3&gt;
  
  
  2. Official Documentation: A Good Starting Point
&lt;/h3&gt;

&lt;p&gt;The official documentation is solid but can be overwhelming if you do not know where to start.&lt;/p&gt;

&lt;p&gt;The &lt;a href="https://opentelemetry.io" rel="noopener noreferrer"&gt;OpenTelemetry&lt;/a&gt; site has quickstart guides per language, Collector setup instructions and SDK and instrumentation references. The GitHub repositories for the &lt;a href="https://github.com/open-telemetry/opentelemetry-collector" rel="noopener noreferrer"&gt;&lt;strong&gt;Collector&lt;/strong&gt;&lt;/a&gt; and the &lt;a href="https://github.com/open-telemetry/opentelemetry-python" rel="noopener noreferrer"&gt;&lt;strong&gt;Python SDK&lt;/strong&gt;&lt;/a&gt;, for example, contain READMEs, contributing guides and issues labeled good first issue, which provide context and entry points for new contributors.&lt;/p&gt;
&lt;h3&gt;
  
  
  3. Useful Unofficial Resources: the unconventional way
&lt;/h3&gt;

&lt;p&gt;Blogs, tutorials, YouTube talks, and conference sessions (e.g. &lt;strong&gt;KubeCon&lt;/strong&gt; past sessions on &lt;a href="https://www.youtube.com/@cncf/videos" rel="noopener noreferrer"&gt;CNCF YouTube&lt;/a&gt; channel) demonstrate real setups, including projects like OTel Injector. Community discussions on CNCF Slack channels often provide practical tips missing from the documentation. Contributions do not have to be code-related.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://opentelemetry.io/docs/contributing/localization/" rel="noopener noreferrer"&gt;&lt;strong&gt;Localization&lt;/strong&gt;&lt;/a&gt; of documentation, writing guides, creating sample applications, and providing feedback on instrumentation user experience are all highly valuable.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3&gt;
  
  
  4. Setting Up a Local Sandbox
&lt;/h3&gt;

&lt;p&gt;Hands-on exploration is the fastest way to learn. Start by forking and cloning the repository.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://github.com/your-username/opentelemetry-python.git
&lt;span class="nb"&gt;cd &lt;/span&gt;opentelemetry-python
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Set up the development environment with pip install editable for Python or go build for Go. Run tests to verify your setup.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight console"&gt;&lt;code&gt;&lt;span class="go"&gt;pytest
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Experiment by adding a log, tweaking instrumentation or sending data to a local Grafana instance or your preferred observability frontend platform.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Learn by Reading and Modifying Code
&lt;/h3&gt;

&lt;p&gt;Start with small tasks such as documentation or test fixes. Study recent pull requests to learn patterns and best practices. Explore test cases as they often illustrate intended behavior clearly. Open draft pull requests for minor improvements, even for localization or example tweaks.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Be curious. Ask questions. Keep yourself motivated and challenged.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  6. Expanding Your Knowledge
&lt;/h3&gt;

&lt;p&gt;CNCF learning resources and courses are helpful. The Linux Foundation &lt;a href="https://training.linuxfoundation.org/certification/opentelemetry-certified-associate-otca/" rel="noopener noreferrer"&gt;&lt;strong&gt;OpenTelemetry Certification&lt;/strong&gt;&lt;/a&gt; provides a structured way to validate your understanding and gain deeper insight into the ecosystem. Hands-on projects, such as building a Collector with a sample application and Grafana pipeline, consolidate learning. Curated GitHub tutorials or Medium guides help fill gaps.&lt;/p&gt;

&lt;h3&gt;
  
  
  7. Making Contributions Sustainable
&lt;/h3&gt;

&lt;p&gt;Sustaining contributions is about picking a focus and staying engaged. Choose a module, library, or project to focus on. Projects like OTel Injector and Weaver are particularly exciting because they address automation and pipeline management, which are pain points for many teams.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Attend SIG meetings to understand ongoing development and decisions. Share what you learn through blogs, demos, or internal talks, and review others’ pull requests or mentor newcomers. Contributions that improve usability, documentation, localization, or developer experience have a long-lasting impact even if they are not code-heavy. &lt;a href="https://github.com/open-telemetry/community" rel="noopener noreferrer"&gt;&lt;strong&gt;Community&lt;/strong&gt;&lt;/a&gt; is key.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Why you should listen to me?
&lt;/h3&gt;

&lt;p&gt;In 2024, I was just like you. Novice, no prior Open Source or Cloud Native contribution. Then I got curious about OpenTelemetry. I joined the community and started adding my first contributions to the OpenTelemetry (OTCA) exam certification. Over 7–8 months, I have contributed and revised many exam questions, read official and unofficial documentation, paid attention to what my peers suggested. I showed up and I got myself motivated. With its general public release in January 2025, I became &lt;a href="https://sessionize.com/diana-todea/" rel="noopener noreferrer"&gt;OTCA Exam developer&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Then I POC-ed OpenTelemetry at my company. It failed to reach production. But I did collaborated with developers, we instrumented code together, we made our tests, we saw the OTel potential. We provided our developer &lt;a href="https://medium.com/@dianatodea/i-played-with-otel-and-i-liked-it-a69af868568b" rel="noopener noreferrer"&gt;feedback&lt;/a&gt; to the community.&lt;/p&gt;

&lt;p&gt;In January 2025, I contributed with my first commit and PR to the OpenTelemetry repository. Then soon followed other PRs and localization contributions. In August 2025, I created a new localization SIG for &lt;a href="https://opentelemetry.io/ro/docs/" rel="noopener noreferrer"&gt;Romanian&lt;/a&gt;. I asked new contributors to join and mentored them.&lt;/p&gt;

&lt;p&gt;In November 2025, at &lt;a href="https://medium.com/@dianatodea/how-i-made-the-most-of-kubecon-cloudnativecon-atlanta-2025-and-how-you-can-maximize-your-network-e9a79dd98169" rel="noopener noreferrer"&gt;KubeCon Atlanta&lt;/a&gt;, the community supported us just like we supported the community all this time. Along with some of my peers, I received the &lt;a href="https://opentelemetry.io/blog/2025/community-awards-winners/" rel="noopener noreferrer"&gt;OpenTelemetry 2025 Contributor Award&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fufst92ycc9afw3aew96k.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fufst92ycc9afw3aew96k.jpeg" width="800" height="1066"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In 2025, I spoke at 9 different conferences about &lt;a href="https://github.com/didiViking/Conferences_Talks" rel="noopener noreferrer"&gt;my journey with OpenTelemetry&lt;/a&gt; and how important motivation is for the long run contributors in cloud native.&lt;/p&gt;

&lt;p&gt;You can do it too. The OpenTelemetry community is extremely supportive and communicative. &lt;strong&gt;Be curious, ask questions, show up, diversify your contributions, stay motivated. The results won’t fail to appear!&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Where to find me:&lt;/strong&gt; &lt;a href="https://github.com/didiViking" rel="noopener noreferrer"&gt;https://github.com/didiViking&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ask me questions:&lt;/strong&gt; &lt;a href="https://www.linkedin.com/in/diana-todea-b2a79968/" rel="noopener noreferrer"&gt;https://www.linkedin.com/in/diana-todea-b2a79968/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>softwaredevelopment</category>
      <category>contribution</category>
      <category>cloudnative</category>
      <category>observability</category>
    </item>
    <item>
      <title>Observability Is a Mesh, Not a Braid</title>
      <dc:creator>didiViking</dc:creator>
      <pubDate>Fri, 07 Nov 2025 05:18:30 +0000</pubDate>
      <link>https://dev.to/didiviking/observability-is-a-mesh-not-a-braid-3kkn</link>
      <guid>https://dev.to/didiviking/observability-is-a-mesh-not-a-braid-3kkn</guid>
      <description>&lt;p&gt;Observability Is a Mesh, Not a Braid&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdxjokk9t8i4l3izburki.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdxjokk9t8i4l3izburki.jpeg" width="800" height="1066"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Bergen, Norway. Photo by Diana Todea&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;We’ve often been told that observability rests on three pillars — logs, metrics, and traces — or that these strands intertwine neatly like a braid. It’s a comforting metaphor, one that suggests order and harmony among signals. But real systems aren’t orderly. They’re complex, asynchronous, and constantly shifting. Observability doesn’t behave like a braid. It behaves like a mesh.&lt;/p&gt;

&lt;p&gt;A braid implies structure and predictability: each strand follows a path, and their intersections are fixed. But when you look closely at how telemetry behaves in distributed systems, you find anything but predictability. Data flows at different cadences, from different layers of the stack, enriched by different contexts. Metrics may emerge from log aggregation. Logs can embed trace identifiers. Traces often contain time-series attributes that behave like metrics. These aren’t distinct categories, they’re dynamic relationships.&lt;/p&gt;

&lt;p&gt;Imagine investigating a sudden rise in latency for a payment service. The initial clue might come from a metric showing increased response times. From there, you jump into traces and find that all slow requests involve a single external API call. Tracing that further, you examine logs from the API gateway and discover retries caused by a misconfigured timeout. What connects these steps isn’t a hierarchy of signals, it’s context carried across identifiers, timestamps, and metadata. The insight doesn’t live in one signal alone but in the relationship between them.&lt;/p&gt;

&lt;p&gt;This is why observability should be understood as a mesh of relationships, not a bundle of separate strands. Each piece of telemetry, whether it’s a counter, a span, or an event, connects through context, forming a living topology that shifts as your system evolves. The mesh isn’t made of the signals themselves but of the connections between them: shared identifiers, correlated timestamps, causal links, and metadata. When you traverse observability data, you’re not moving through pillars, you’re traversing a network of meaning.&lt;/p&gt;

&lt;p&gt;The mesh metaphor captures how observability evolves in distributed and ephemeral environments. Consider a serverless function that spins up for milliseconds to process a queue message. It may emit a trace span without a persistent log or metric, but downstream services enrich that trace with new dimensions — latency, request size, user ID — creating new edges in the observability mesh. When a container dies or a node scales out, its telemetry doesn’t vanish into isolation; its contextual connections persist through tags, labels, and linkages.&lt;/p&gt;

&lt;p&gt;A mesh perspective reflects how teams reason about systems in practice. When an incident unfolds, engineers don’t follow a single thread of data; they pivot. They correlate metrics with events, compare trace patterns across deployments, and examine recent configuration changes. Each hop, from metric to trace to log, is a traversal across the mesh. This movement is what makes observability powerful: it’s the ability to move seamlessly through interconnected signals to reconstruct system behavior.&lt;/p&gt;

&lt;p&gt;Thinking of observability as a mesh shifts how we reason about its purpose. The old “pillars” describe what we collect; the mesh describes how we understand. Observability ceases to be a taxonomy of data types and becomes a topology of understanding. It’s not about piling up signals, but about weaving context between them, because insight doesn’t live inside a single metric or log line, but in the spaces between them.&lt;/p&gt;

&lt;p&gt;A braid has order; a mesh has resilience. In an era of ephemeral infrastructure, where systems spin up and vanish in seconds, resilience is what matters. Observability as a mesh is not about permanence, it’s about adaptation. The stronger and more contextual the connections, the clearer the system’s shape becomes, even as it shifts beneath us.&lt;/p&gt;

&lt;p&gt;From Observation to Comprehension: Living Inside the Mesh&lt;/p&gt;

&lt;p&gt;Seeing observability as a mesh reshapes not only how we collect data, but how we think about it. It changes the developer’s relationship with telemetry, from extracting information from the system to navigating within it.&lt;/p&gt;

&lt;p&gt;When observability is treated as a mesh, developers stop thinking in terms of silos — “check the metrics,” “look at the logs,” “open the traces” — and start thinking in paths: “Follow the context.” Instead of jumping between tools, they trace relationships: a spike in a metric leads to a trace pattern, which leads to a deployment change, which leads to a user symptom. Observability becomes a spatial experience rather than a search exercise.&lt;/p&gt;

&lt;p&gt;In this mental model, the observability stack isn’t a dashboard full of widgets; it’s an interactive map of behavior. The developer doesn’t query isolated datasets but traverses relationships, just like moving through a graph. This shift in mindset encourages exploration over instrumentation  —  curiosity over configuration. Instead of asking, “Did I collect the right data?” the question becomes, “Where does this signal connect?”&lt;/p&gt;

&lt;p&gt;For users, especially those diagnosing incidents or understanding product behavior, the mesh reframes what “visibility” means. Visibility isn’t about volume — the more logs, the better — but about connectivity: how easily can you move from one clue to another? When the mesh is strong, users don’t get lost in data. They flow through it naturally.&lt;/p&gt;

&lt;p&gt;This way of thinking also influences design. In a mesh-oriented world, observability tools must emphasize relationships first and data types second. Interfaces should guide users through correlations: linking error rates to feature toggles, tracing slow endpoints to commits, connecting user impact to deployment history. Observability platforms become storytelling environments, narratives stitched from interconnected evidence.&lt;/p&gt;

&lt;p&gt;The mesh democratizes observability. When context is portable, when you can follow a request’s journey from client to cache to backend without needing tribal knowledge, the barrier to understanding systems drops. Observability becomes collective memory rather than individual expertise.&lt;/p&gt;

&lt;p&gt;Ultimately, the mesh mindset moves observability beyond diagnostics into dialogue. Developers no longer interrogate their systems; they converse with them. Each relationship — between signals, between components, between intent and outcome — becomes part of an evolving conversation about how the system behaves. The observability mesh is the language of that conversation.&lt;/p&gt;

&lt;p&gt;Conclusion&lt;/p&gt;

&lt;p&gt;Observability is not static infrastructure, it’s a living, breathing topology that tells the story of a system in motion. Seeing it as a mesh allows us to move beyond classification toward comprehension — to stop counting pillars and start tracing connections.&lt;/p&gt;

&lt;p&gt;Note: The term “observability as a mesh” has been mentioned before, such as in a 2024 article by SigNoz. This piece builds on that phrasing to develop a new conceptual model—treating the mesh not just as interconnected data, but as an adaptive, cognitive topology that reflects how engineers think, reason, and interact with systems.&lt;/p&gt;

&lt;p&gt;Further reading:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://signoz.io/guides/observability-vs-monitoring-vs-telemetry" rel="noopener noreferrer"&gt;Observability vs Monitoring vs Telemetry - Key Differences&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://thenewstack.io/modern-observability-is-a-single-braid-of-data/" rel="noopener noreferrer"&gt;Modern Observability Is a Single Braid of Data&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>datamesh</category>
      <category>softwaredevelopment</category>
      <category>monitoring</category>
      <category>observability</category>
    </item>
    <item>
      <title>OTel Me More on Traces: introducing VictoriaMetrics’ Trace Analyzer</title>
      <dc:creator>didiViking</dc:creator>
      <pubDate>Thu, 21 Aug 2025 09:47:17 +0000</pubDate>
      <link>https://dev.to/didiviking/otel-me-more-on-traces-introducing-victoriametrics-trace-analyzer-3on4</link>
      <guid>https://dev.to/didiviking/otel-me-more-on-traces-introducing-victoriametrics-trace-analyzer-3on4</guid>
      <description>&lt;p&gt;&lt;strong&gt;Tracing&lt;/strong&gt; is an essential part of modern observability, helping developers understand how requests flow through distributed systems. &lt;a href="https://opentelemetry.io/docs/what-is-opentelemetry/" rel="noopener noreferrer"&gt;OpenTelemetry&lt;/a&gt; (OTel) has become the de facto standard for collecting traces across services, and &lt;a href="https://docs.victoriametrics.com/victoriametrics/quick-start/" rel="noopener noreferrer"&gt;VictoriaMetrics&lt;/a&gt;’ UI now includes a powerful &lt;a href="https://docs.victoriametrics.com/#query-tracing" rel="noopener noreferrer"&gt;&lt;strong&gt;Trace Analyzer&lt;/strong&gt;&lt;/a&gt; that provides detailed execution traces of queries. These traces show how VictoriaMetrics queries are processed internally, highlighting stages, timings, and resource usage so you can turn raw query execution data into actionable performance insights. In this article, we’ll explore how the &lt;strong&gt;Trace Analyzer&lt;/strong&gt; works, how to use it, why it matters for your monitoring stack and how you can combine it with OTel to get both system-wide spans and deep query-level traces.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why Tracing Matters
&lt;/h3&gt;

&lt;p&gt;In complex architectures, latency issues and failures rarely occur in isolation. Distributed tracing helps answer critical questions:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Which service is slowing down my request?&lt;/li&gt;
&lt;li&gt;Where are errors originating in a multi-service call chain?&lt;/li&gt;
&lt;li&gt;How does traffic affect the performance of each component?&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;OTel provides a standardized way to instrument your applications and collect trace data. However, collecting traces is just the first step, analyzing them efficiently is where the real value comes in.&lt;/p&gt;

&lt;h3&gt;
  
  
  Introducing VictoriaMetrics Trace Analyzer
&lt;/h3&gt;

&lt;p&gt;VictoriaMetrics’ Trace Analyzer is designed to make &lt;strong&gt;query trace exploration&lt;/strong&gt; intuitive and fast. With it, you can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Visualize&lt;/strong&gt; query execution as an interactive tree, showing each evaluation step and how long it took.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Inspect&lt;/strong&gt; details such as time ranges, step size, number of matched series, and points processed.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Identify&lt;/strong&gt; bottlenecks in queries (e.g. heavy rollups, large series scans, or cache misses).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Combine&lt;/strong&gt; Trace Analyzer with OTel-collected spans in your stack: use OTel for distributed request flows and Trace Analyzer for deep insights into how VictoriaMetrics executes your queries.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Before diving into setup, let’s get a better understanding of VictoriaMetrics’ &lt;a href="https://victoriametrics.com/blog/victoriametrics-getting-started/" rel="noopener noreferrer"&gt;architecture&lt;/a&gt; and where Trace Analyzer fits.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5w45fzbt3chpu4j4fdi4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5w45fzbt3chpu4j4fdi4.png" width="800" height="838"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Components of a VictoriaMetrics cluster explained&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;In &lt;a href="https://docs.victoriametrics.com/#vmui" rel="noopener noreferrer"&gt;VMUI&lt;/a&gt; (VictoriaMetrics Native UI), you’ll discover powerful, unique tools such as &lt;strong&gt;Trace Analyzer&lt;/strong&gt;, &lt;strong&gt;Trace Query&lt;/strong&gt;, and &lt;strong&gt;Query Analyzer&lt;/strong&gt;, along with features that make exploring and debugging metrics a breeze. These include raw metrics exploration, cardinality analysis, top and active queries inspection, a &lt;strong&gt;WITH expressions playground&lt;/strong&gt;, &lt;strong&gt;metric relabeling&lt;/strong&gt;, &lt;strong&gt;downsampling&lt;/strong&gt;, and &lt;strong&gt;retention filter debuggers&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faisecaang3opv282yzxs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faisecaang3opv282yzxs.png" width="800" height="319"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Getting Started
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Install either VictoriaMetrics &lt;a href="https://docs.victoriametrics.com/victoriametrics/quick-start/" rel="noopener noreferrer"&gt;&lt;strong&gt;single-node&lt;/strong&gt;&lt;/a&gt; or &lt;a href="https://docs.victoriametrics.com/victoriametrics/cluster-victoriametrics/" rel="noopener noreferrer"&gt;&lt;strong&gt;cluster version&lt;/strong&gt;&lt;/a&gt;. For this tutorial, I’m using VictoriaMetrics single-node version and the setup will clearly be a lot easier. In a VictoriaMetrics single-node setup, we do not need a separate vmagent container because the single-node binary already includes a built-in Prometheus-compatible scraping engine. All Prometheus-compatible targets (like node_exporter or application endpoints) can be discovered and scraped directly using a scrape.yaml configuration file, which is mounted into the VictoriaMetrics container. This file defines all the jobs, endpoints, and labels needed for metrics collection, so adding vmagent would be redundant and could cause duplicate scrapes.&lt;/li&gt;
&lt;li&gt;I installed VictoriaMetrics single-node and defined all static &lt;a href="https://docs.victoriametrics.com/victoriametrics/scrape_config_examples/" rel="noopener noreferrer"&gt;scrape jobs&lt;/a&gt; in a scrape.yaml file.
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="na"&gt;global&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;scrape_interval&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;10s&lt;/span&gt;

&lt;span class="na"&gt;scrape_configs&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;job_name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;node'&lt;/span&gt;
    &lt;span class="na"&gt;static_configs&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;targets&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;node-exporter:9100'&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;

  &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;job_name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;standard-app'&lt;/span&gt;
    &lt;span class="na"&gt;static_configs&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;targets&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;demo-app:8083'&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;

  &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;job_name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;highcard'&lt;/span&gt;
    &lt;span class="na"&gt;static_configs&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;targets&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;demo-highcard-app:8084'&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;

  &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;job_name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;traffic-skew'&lt;/span&gt;
    &lt;span class="na"&gt;static_configs&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;targets&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;demo-traffic-skew-app:8085'&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;ol&gt;
&lt;li&gt;Pull and run the OTel Collector, I used the docker image setup for &lt;strong&gt;otel/opentelemetry-collector-contrib,&lt;/strong&gt; and I defined a docker-compose.yaml file where I added my entire setup. Below my docker-compose.yaml file which has a &lt;a href="https://grafana.com/grafana/plugins/victoriametrics-metrics-datasource/?tab=installation" rel="noopener noreferrer"&gt;Grafana&lt;/a&gt; OSS local setup, and some basic apps to generate traffic and metrics.
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="na"&gt;services&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;victoria-metrics&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;image&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;victoriametrics/victoria-metrics:v1.122.0&lt;/span&gt;
    &lt;span class="na"&gt;ports&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;18428:8428"&lt;/span&gt;

  &lt;span class="na"&gt;grafana&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;image&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;grafana/grafana:11.1.0&lt;/span&gt;
    &lt;span class="na"&gt;ports&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;13000:3000"&lt;/span&gt;
    &lt;span class="na"&gt;environment&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;GF_SECURITY_ADMIN_USER=[redacted]&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;GF_SECURITY_ADMIN_PASSWORD=[redacted]&lt;/span&gt;
    &lt;span class="na"&gt;volumes&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;./grafana-provisioning:/etc/grafana/provisioning&lt;/span&gt;
    &lt;span class="na"&gt;depends_on&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;victoria-metrics&lt;/span&gt;

  &lt;span class="na"&gt;node-exporter&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;image&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;prom/node-exporter:v1.7.0&lt;/span&gt;
    &lt;span class="na"&gt;ports&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;9101:9100"&lt;/span&gt;

  &lt;span class="na"&gt;demo-app&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;build&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="na"&gt;context&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;./demo-app&lt;/span&gt;
    &lt;span class="na"&gt;environment&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;PORT=8083&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;LABEL_COUNT=5&lt;/span&gt;
    &lt;span class="na"&gt;ports&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;8083:8083"&lt;/span&gt;

  &lt;span class="na"&gt;loadgen-demo-app&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;image&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;python:3.12-alpine&lt;/span&gt;
    &lt;span class="na"&gt;depends_on&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;demo-app&lt;/span&gt;
    &lt;span class="na"&gt;command&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;&amp;gt;&lt;/span&gt;
      &lt;span class="s"&gt;sh -c "pip install --no-cache-dir requests &amp;amp;&amp;amp;&lt;/span&gt;
             &lt;span class="s"&gt;python -u -c 'import requests, time; &lt;/span&gt;
             &lt;span class="s"&gt;while True: requests.get(\"http://demo-app:8083\"); time.sleep(0.1)'"&lt;/span&gt;

  &lt;span class="na"&gt;demo-highcard-app&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;build&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="na"&gt;context&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;./demo-highcard-app&lt;/span&gt;
    &lt;span class="na"&gt;environment&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;PORT=8084&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;LABEL_COUNT=50&lt;/span&gt;
    &lt;span class="na"&gt;ports&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;8084:8084"&lt;/span&gt;

  &lt;span class="na"&gt;loadgen-demo-highcard-app&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;image&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;python:3.12-alpine&lt;/span&gt;
    &lt;span class="na"&gt;depends_on&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;demo-highcard-app&lt;/span&gt;
    &lt;span class="na"&gt;command&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;&amp;gt;&lt;/span&gt;
      &lt;span class="s"&gt;sh -c "pip install --no-cache-dir requests &amp;amp;&amp;amp;&lt;/span&gt;
             &lt;span class="s"&gt;python -u -c 'import requests, time; &lt;/span&gt;
             &lt;span class="s"&gt;while True: requests.get(\"http://demo-highcard-app:8084\"); time.sleep(0.1)'"&lt;/span&gt;

  &lt;span class="na"&gt;demo-traffic-skew-app&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;build&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="na"&gt;context&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;./demo-traffic-skew-app&lt;/span&gt;
    &lt;span class="na"&gt;environment&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;PORT=8085&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;LABEL_COUNT=5&lt;/span&gt;
    &lt;span class="na"&gt;ports&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;8085:8085"&lt;/span&gt;

  &lt;span class="na"&gt;loadgen-demo-traffic-skew-app&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;image&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;python:3.12-alpine&lt;/span&gt;
    &lt;span class="na"&gt;depends_on&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;demo-traffic-skew-app&lt;/span&gt;
    &lt;span class="na"&gt;command&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;&amp;gt;&lt;/span&gt;
      &lt;span class="s"&gt;sh -c "pip install --no-cache-dir requests &amp;amp;&amp;amp;&lt;/span&gt;
             &lt;span class="s"&gt;python -u -c 'import requests, time; &lt;/span&gt;
             &lt;span class="s"&gt;while True: requests.get(\"http://demo-traffic-skew-app:8085\"); time.sleep(0.1)'&lt;/span&gt;

  &lt;span class="na"&gt;otel-collector&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;image&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;otel/opentelemetry-collector-contrib:0.132.0&lt;/span&gt;
    &lt;span class="na"&gt;command&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;--config=/etc/otel-collector/config.yaml"&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
    &lt;span class="na"&gt;volumes&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;./otel-collector/config.yaml:/etc/otel-collector/config.yaml:ro&lt;/span&gt;

    &lt;span class="na"&gt;ports&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;8889:8889"&lt;/span&gt;  
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;4317:4317"&lt;/span&gt;  
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;4318:4318"&lt;/span&gt;
    &lt;span class="na"&gt;depends_on&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;victoria-metrics&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;demo-app&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;demo-highcard-app&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;demo-traffic-skew-app&lt;/span&gt;
      &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="s"&gt;node-exporter&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;However, we still use an OTel scrape job in the collector’s config because it allows the OTel Collector to &lt;strong&gt;expose its own internal metrics&lt;/strong&gt; (like otelcol_exporter_send_failed_metric_points_total) to VictoriaMetrics. Without this job, these important telemetry metrics from the collector itself would not be visible. Essentially: scrape.yaml handles all external targets, while the OTel scrape job handles &lt;strong&gt;self-monitoring of the collector&lt;/strong&gt;. Below you can view my otel-collector config.yaml file, where &lt;strong&gt;metricsql-lab-victoria-metrics-1&lt;/strong&gt; is the hostname used in this demo setup. In this case, the otel-collector config.yaml file will be stored in a separate folder from where my victoriametrics and the metrics apps are hosted.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="na"&gt;receivers&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;otlp&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;protocols&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="na"&gt;grpc&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
        &lt;span class="na"&gt;endpoint&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;0.0.0.0:4317"&lt;/span&gt;
      &lt;span class="na"&gt;http&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
        &lt;span class="na"&gt;endpoint&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;0.0.0.0:4318"&lt;/span&gt;

  &lt;span class="na"&gt;prometheus&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;config&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="na"&gt;scrape_configs&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
        &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;job_name&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;otel-collector'&lt;/span&gt;
          &lt;span class="na"&gt;static_configs&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
            &lt;span class="pi"&gt;-&lt;/span&gt; &lt;span class="na"&gt;targets&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;0.0.0.0:8888'&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;

  &lt;span class="na"&gt;filelog&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;include&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;/logs/*.log"&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
    &lt;span class="na"&gt;start_at&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;beginning&lt;/span&gt;

&lt;span class="na"&gt;processors&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;resourcedetection&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;detectors&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="nv"&gt;system&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
  &lt;span class="na"&gt;batch&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;timeout&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;5s&lt;/span&gt;

&lt;span class="na"&gt;exporters&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;prometheusremotewrite&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;endpoint&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;http://metricsql-lab-victoria-metrics-1:8428/api/v1/write"&lt;/span&gt;
    &lt;span class="na"&gt;retry_on_failure&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="na"&gt;enabled&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;
      &lt;span class="na"&gt;initial_interval&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;5s&lt;/span&gt;
      &lt;span class="na"&gt;max_interval&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;30s&lt;/span&gt;
      &lt;span class="na"&gt;max_elapsed_time&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="m"&gt;0&lt;/span&gt;

  &lt;span class="na"&gt;prometheus&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;endpoint&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;0.0.0.0:8889"&lt;/span&gt;

&lt;span class="na"&gt;service&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;telemetry&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;metrics&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="na"&gt;level&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;basic&lt;/span&gt;

  &lt;span class="na"&gt;pipelines&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;metrics&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
      &lt;span class="na"&gt;receivers&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="nv"&gt;otlp&lt;/span&gt;&lt;span class="pi"&gt;,&lt;/span&gt; &lt;span class="nv"&gt;prometheus&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
      &lt;span class="na"&gt;processors&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="nv"&gt;resourcedetection&lt;/span&gt;&lt;span class="pi"&gt;,&lt;/span&gt; &lt;span class="nv"&gt;batch&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
      &lt;span class="na"&gt;exporters&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="nv"&gt;prometheus&lt;/span&gt;&lt;span class="pi"&gt;,&lt;/span&gt; &lt;span class="nv"&gt;prometheusremotewrite&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;Ensure the OTel Collector is on the same &lt;strong&gt;Docker network&lt;/strong&gt; as VictoriaMetrics and the demo apps. You might run into different errors, depending on how complex your setup is, and if one of those errors is network related, you might want to troubleshoot it with:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker network &lt;span class="nb"&gt;ls
&lt;/span&gt;docker inspect network &amp;lt;your-network&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If the otel collector doesn’t show in the same network with the rest of your services, simply add it to the same network, reboot your otel collector service and you’re good to test.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker network connect &amp;lt;your-network&amp;gt; otelcol
docker restart &amp;lt;otelcol&amp;gt;
docker ps &lt;span class="nt"&gt;-a&lt;/span&gt;
docker logs &lt;span class="nt"&gt;-f&lt;/span&gt; &amp;lt;otelcol&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Switch to VMUI: you can go directly into the &lt;a href="http://localhost:8428" rel="noopener noreferrer"&gt;http://localhost:8428&lt;/a&gt; or whatever port you have defined for it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flqtufdplz396ryyptwvf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flqtufdplz396ryyptwvf.png" width="792" height="534"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;What I like to do immediately is go to &lt;strong&gt;Explore&amp;gt;Explore Cardinality&lt;/strong&gt;. This is where the juicy part starts happening and this view actually helps me troubleshoot cardinality.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5nd3t2hocicvlkrmul2t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5nd3t2hocicvlkrmul2t.png" width="800" height="377"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy3x3lugi3fb0907hrowp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy3x3lugi3fb0907hrowp.png" width="799" height="359"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Looking at the metric names with highest number of series I can drill down into the metric name. In this case, I’m searching for otelcol-contrib, so I’ll check the labels section, job and drill down there.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frxh6xcic03pyw1t0iwrf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frxh6xcic03pyw1t0iwrf.png" width="800" height="134"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Done. Now I’m going even further to look at the metrics for this job.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgwdi3iksprlgldqvqq13.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgwdi3iksprlgldqvqq13.png" width="799" height="356"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This panel helps me understand which metrics have the highest cardinality and which have the lowest. To learn how to use the &lt;strong&gt;Cardinality Explorer&lt;/strong&gt; properly and be more efficient in your troubleshooting, then please read this &lt;a href="https://victoriametrics.com/blog/cardinality-explorer/" rel="noopener noreferrer"&gt;article&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;For example this panel shows us OTel Collector’s own internal metrics, which are very useful in providing us the necessary info to monitor the OTel collector’s health. We can check if:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the collector is &lt;strong&gt;receiving data&lt;/strong&gt; from all configured sources (otelcol_receiver_accepted_spans_total, otelcol_receiver_received_metrics_total)&lt;/li&gt;
&lt;li&gt;there are any &lt;strong&gt;exporters failing&lt;/strong&gt; to send metrics or traces to the backend (otelcol_exporter_send_failed_metric_points_total)&lt;/li&gt;
&lt;li&gt;how &lt;strong&gt;fast is the collector processing&lt;/strong&gt; incoming telemetry (otelcol_processor_accepted_spans_total, otelcol_processor_dropped_spans_total)&lt;/li&gt;
&lt;li&gt;there are any &lt;strong&gt;backlogs or bottlenecks&lt;/strong&gt; forming in any pipeline stages&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj9z8agbiehxgmbfm7i1g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj9z8agbiehxgmbfm7i1g.png" width="800" height="310"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A concrete example of this metric otelcol_exporter_prometheusremotewrite_consumers will let me know &lt;strong&gt;how many “consumer pipelines” are connected to that exporter&lt;/strong&gt; at a given moment and &lt;strong&gt;verify that the metrics pipelines are actually connected&lt;/strong&gt; to the remote write backend and not idle.&lt;/p&gt;

&lt;p&gt;We can drill down into each query by exploring the &lt;strong&gt;Query&lt;/strong&gt; and its capabilities. Using the query {job="otelcol-contrib} I can activate &lt;strong&gt;Trace query&lt;/strong&gt; by enabling the button below it and executing the query again to get the results.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzkylk7vnd20slqdst3pe.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzkylk7vnd20slqdst3pe.png" width="800" height="441"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When you enable query tracing in VictoriaMetrics, each line in the output represents a step in the query’s execution. The trace shows how long the step took, which API endpoint was called and what kind of operation was performed. You’ll also see the time range that was evaluated, the resolution of the query, and the actual expression being run. At the end of the line, VictoriaMetrics reports how many time series matched the query and how many data points were processed. Taken together, these lines form a detailed breakdown of the query lifecycle, making it easier to understand how the system executed your request and where most of the work happened.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzzhisuzjxukb24qmq47d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzzhisuzjxukb24qmq47d.png" width="800" height="444"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let’s save one of these traces to JSON and explore the Trace Analyzer.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fft5yxqors22j6soz5x9q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fft5yxqors22j6soz5x9q.png" width="800" height="298"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Upload the trace JSON file into Trace Analyzer, then expand all nodes to explore details.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv1tu02mpicpr28r8dwpl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv1tu02mpicpr28r8dwpl.png" width="800" height="429"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once you upload a trace JSON into VictoriaMetrics’ &lt;strong&gt;Trace Analyzer&lt;/strong&gt; , you get more than just raw query execution lines, it offers &lt;strong&gt;interactive exploration and analysis&lt;/strong&gt; : you can see the query broken down into a &lt;strong&gt;tree of operations&lt;/strong&gt; , where each node shows the type of step (e.g., evaluation, rollup, merge), how long it took, and how many series and points it processed. You can &lt;strong&gt;expand or collapse nodes&lt;/strong&gt; to focus on the steps that matter most and quickly identify bottlenecks or expensive parts of your query. It also highlights &lt;strong&gt;cache hits vs full computation&lt;/strong&gt; , so you can see whether repeated queries benefit from caching.&lt;/p&gt;

&lt;p&gt;Additionally, the interface lets you &lt;strong&gt;filter, sort, and navigate&lt;/strong&gt; through large traces, making it easier to understand complex queries at a glance. Essentially, the Trace Analyzer transforms a static JSON trace into a &lt;strong&gt;visual, interactive breakdown&lt;/strong&gt; that makes query performance and optimization much more intuitive.&lt;/p&gt;

&lt;p&gt;Beyond visualizing queries, Trace Analyzer helps you &lt;strong&gt;optimize performance&lt;/strong&gt; by revealing which steps take the most time or process the most series. It lets you &lt;strong&gt;monitor cache effectiveness&lt;/strong&gt; , &lt;strong&gt;compare runs&lt;/strong&gt; to spot regressions, and provides actionable insights for &lt;strong&gt;query tuning, infrastructure adjustments, and team education&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What’s Ahead: VictoriaTraces and the Bigger Observability Picture&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;While Trace Analyzer gives deep insights into how VictoriaMetrics executes individual queries, &lt;a href="https://docs.victoriametrics.com/victoriatraces/" rel="noopener noreferrer"&gt;&lt;strong&gt;VictoriaTraces&lt;/strong&gt;&lt;/a&gt; takes observability to the next level. VictoriaTraces is designed to handle &lt;strong&gt;distributed tracing at scale&lt;/strong&gt; , collecting and storing OpenTelemetry spans across services and applications. It complements VictoriaMetrics by focusing on &lt;strong&gt;end-to-end request flows&lt;/strong&gt; , while Trace Analyzer focuses on &lt;strong&gt;query-level execution details&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Together, they provide a &lt;strong&gt;full-spectrum view of your observability stack&lt;/strong&gt; : VictoriaTraces shows how requests move through your distributed system, helping you detect latency or bottlenecks across services, while Trace Analyzer lets you &lt;strong&gt;dig into the performance of your queries themselves&lt;/strong&gt; , identifying expensive steps, cache behavior, and series volume. By combining the two, developers and SREs can correlate &lt;strong&gt;application-level traces with database/query-level insights&lt;/strong&gt; , making performance optimization more precise and actionable.&lt;/p&gt;

&lt;p&gt;This integration strengthens the overall ecosystem, enabling teams to &lt;strong&gt;move from detection to diagnosis to optimization&lt;/strong&gt; faster, all within a unified, efficient monitoring environment.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ready to explore more and engage with the community?&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://github.com/VictoriaMetrics/VictoriaMetrics" rel="noopener noreferrer"&gt;VictoriaMetrics Github repo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/VictoriaMetrics/VictoriaTraces" rel="noopener noreferrer"&gt;VictoriaTraces Github repo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://victoriametrics.com/community/" rel="noopener noreferrer"&gt;VictoriaMetrics community&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/VictoriaMetrics-Community" rel="noopener noreferrer"&gt;VictoriaMetrics Community Github repo&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Have questions for me? Give me a shout on:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.linkedin.com/in/diana-todea-b2a79968/" rel="noopener noreferrer"&gt;LinkedIN&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/didiViking/Conferences_Talks" rel="noopener noreferrer"&gt;Github&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Bluesky: &lt;a class="mentioned-user" href="https://dev.to/didiviking"&gt;@didiviking&lt;/a&gt;.bsky.social&lt;/p&gt;

&lt;p&gt;X: @dianavtodea&lt;/p&gt;

&lt;p&gt;Mastodon: @dianatodea&lt;/p&gt;

</description>
      <category>opentelemetry</category>
      <category>opentelemetrycollect</category>
      <category>distributedtracing</category>
      <category>observability</category>
    </item>
  </channel>
</rss>
