{"id":10426,"date":"2021-02-04T08:00:53","date_gmt":"2021-02-04T16:00:53","guid":{"rendered":"http:\/\/softwareengineeringdaily.com\/?p=10426"},"modified":"2021-02-04T13:42:07","modified_gmt":"2021-02-04T21:42:07","slug":"debunking-the-three-pillars-of-observability-myth","status":"publish","type":"post","link":"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/","title":{"rendered":"Debunking the &#8216;Three Pillars of Observability&#8217; Myth"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">Have you heard about the &#8220;three pillars of observability&#8221; yet? No? The story goes like this:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">If you&#8217;re using microservices, you already know that they&#8217;re nearly impossible to understand using a conventional monitoring toolchain: since microservices were literally <\/span><i><span style=\"font-weight: 400;\">designed<\/span><\/i><span style=\"font-weight: 400;\"> to prevent &#8220;<\/span><a href=\"https:\/\/whatis.techtarget.com\/definition\/two-pizza-rule\"><span style=\"font-weight: 400;\">two-pizza<\/span><\/a><span style=\"font-weight: 400;\">&#8221; DevOps teams from knowing about each other, it turns out that it&#8217;s incredibly difficult for any individual to understand the whole, or even their nearest neighbor in the service graph.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Well, Google and Facebook, and Netflix were building microservices before they were called microservices, and I read on Twitter that they already solved all of these problems\u2026 phew! They did it using <\/span><a href=\"http:\/\/lightstep.com\/metrics\"><b>Metrics<\/b><\/a><b>, Logging, and <\/b><a href=\"https:\/\/lightstep.com\/distributed-tracing\/\"><b>Distributed Tracing<\/b><\/a><span style=\"font-weight: 400;\">, so you should, too \u2013 those are called &#8220;<\/span><i><span style=\"font-weight: 400;\">The Three Pillars of Observability<\/span><\/i><span style=\"font-weight: 400;\">,&#8221; and you probably even know what they look like already:<\/span><\/p>\n<p><img data-attachment-id=\"10427\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/lightstep-three-pillars-beware-observability-dogma-img1-1024x431\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img1-1024x431-1.png?fit=1024%2C431&amp;ssl=1\" data-orig-size=\"1024,431\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"lightstep-three-pillars-beware-observability-dogma-img1-1024&#215;431\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img1-1024x431-1.png?fit=300%2C126&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img1-1024x431-1.png?fit=1024%2C431&amp;ssl=1\" decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-10427\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img1-1024x431-1.png?resize=499%2C210\" alt=\"\" width=\"499\" height=\"210\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img1-1024x431-1.png?resize=300%2C126&amp;ssl=1 300w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img1-1024x431-1.png?resize=768%2C323&amp;ssl=1 768w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img1-1024x431-1.png?w=1024&amp;ssl=1 1024w\" sizes=\"(max-width: 499px) 100vw, 499px\" data-recalc-dims=\"1\" \/><\/p>\n<p style=\"text-align: center;\"><i><span style=\"font-weight: 400;\">Metrics!<\/span><\/i><\/p>\n<p><img data-attachment-id=\"10428\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/lightstep-three-pillars-beware-observability-dogma-img2-1024x512\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img2-1024x512-1.png?fit=1024%2C512&amp;ssl=1\" data-orig-size=\"1024,512\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"lightstep-three-pillars-beware-observability-dogma-img2-1024&#215;512\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img2-1024x512-1.png?fit=300%2C150&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img2-1024x512-1.png?fit=1024%2C512&amp;ssl=1\" decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-10428\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img2-1024x512-1.png?resize=500%2C250\" alt=\"\" width=\"500\" height=\"250\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img2-1024x512-1.png?resize=300%2C150&amp;ssl=1 300w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img2-1024x512-1.png?resize=768%2C384&amp;ssl=1 768w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img2-1024x512-1.png?resize=260%2C129&amp;ssl=1 260w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img2-1024x512-1.png?w=1024&amp;ssl=1 1024w\" sizes=\"(max-width: 500px) 100vw, 500px\" data-recalc-dims=\"1\" \/><\/p>\n<p style=\"text-align: center;\"><i><span style=\"font-weight: 400;\">Logs!<\/span><\/i><\/p>\n<p><img data-attachment-id=\"10429\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/lightstep-three-pillars-beware-observability-dogma-img3-1024x567\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img3-1024x567-1.png?fit=1024%2C567&amp;ssl=1\" data-orig-size=\"1024,567\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"lightstep-three-pillars-beware-observability-dogma-img3-1024&#215;567\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img3-1024x567-1.png?fit=300%2C166&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img3-1024x567-1.png?fit=1024%2C567&amp;ssl=1\" decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-10429\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img3-1024x567-1.png?resize=500%2C277\" alt=\"\" width=\"500\" height=\"277\" srcset=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img3-1024x567-1.png?resize=300%2C166&amp;ssl=1 300w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img3-1024x567-1.png?resize=768%2C425&amp;ssl=1 768w, https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img3-1024x567-1.png?w=1024&amp;ssl=1 1024w\" sizes=\"(max-width: 500px) 100vw, 500px\" data-recalc-dims=\"1\" \/><\/p>\n<p style=\"text-align: center;\"><i><span style=\"font-weight: 400;\">Traces!<\/span><\/i><\/p>\n<p><span style=\"font-weight: 400;\">So, if you want to solve <\/span><a href=\"https:\/\/lightstep.com\/observability\/\"><span style=\"font-weight: 400;\">observability<\/span><\/a><span style=\"font-weight: 400;\"> problems like Google and Facebook, and Twitter, it&#8217;s simple\u2026 find a metrics provider, a logging provider, a tracing provider, and voila: your DevOps teams will bask in the light of an observable distributed system.<\/span><\/p>\n<h2><b>Fatal flaws<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Perhaps the above is hyperbolic. Still, for those who deployed &#8220;the three pillars&#8221; as bare technologies, the initial excitement dissipated quickly as fatal flaws emerged.<\/span><\/p>\n<h3><b>Metrics and cardinality<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">For Metrics, we all needed to learn a new vocab word: <\/span><a href=\"https:\/\/go.lightstep.com\/register-guide-to-cardinality.html\"><i><span style=\"font-weight: 400;\">cardinality<\/span><\/i><\/a><span style=\"font-weight: 400;\">. The beauty of metrics is that they make it easy to see when something bad happened: the metric looks like a squiggly line, and you can see it jump up (or down) when something bad happens. But diagnosing those anomalous moments is deeply difficult using metrics alone\u2026 the best we can do is to &#8220;drill down,&#8221; which usually means grouping the metric by a tag, hoping that a specific tag value explains the anomaly, then filtering by that tag and iterating on the drill-down process.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">&#8220;Cardinality&#8221; refers to the number of elements in a set. In the case of metrics, cardinality refers to the number of values for any particular metric tag. If there are 5 values, we&#8217;re probably fine; 50 might be ok; 500 is probably too expensive; and once we get into the thousands, you simply can&#8217;t justify the ROI. Unfortunately, many real-world tags have thousands or millions of values (e.g., user-id, container-id, and so forth), so metrics often prove to be a dead end from an investigative standpoint.<\/span><\/p>\n<h3><b>Logging volumes with microservices<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">For Logs, the problem is simpler to describe: they just become too expensive, period. I was at a speaker dinner before a monitoring conference last year, and one of the other presenters \u2013 a really smart, reputable individual who ran the logging efforts for one of today&#8217;s most iconic tech companies \u2013 was giving a talk the following day about how to approach logging in a microservices environment. I was excited about the topic and asked him what his basic thesis was. He said, &#8220;Oh, it&#8217;s very simple: don&#8217;t log things anymore.&#8221;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">It&#8217;s easy to understand why: if we want to use logs to account for individual transactions (like we used to in the days of a monolithic web server&#8217;s request logs), we would need to pay for the following:<\/span><\/p>\n<p><img data-attachment-id=\"10430\" data-permalink=\"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/lightstep-three-pillars-beware-observability-dogma-img4-300x132\/\" data-orig-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img4-300x132-1.png?fit=300%2C132&amp;ssl=1\" data-orig-size=\"300,132\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"lightstep-three-pillars-beware-observability-dogma-img4-300&#215;132\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img4-300x132-1.png?fit=300%2C132&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img4-300x132-1.png?fit=300%2C132&amp;ssl=1\" decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-10430\" src=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-three-pillars-beware-observability-dogma-img4-300x132-1.png?resize=300%2C132\" alt=\"\" width=\"300\" height=\"132\" data-recalc-dims=\"1\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Logging systems can&#8217;t afford to store data about every transaction anymore because the cost of those transactional logs is <\/span><b>proportional to the number of microservices touched by an average transaction<\/b><span style=\"font-weight: 400;\">. Not to mention that the logs themselves are less useful (independent of cost) due to the analytical need to understand concurrency and causality in microservice transactions. So conventional logging isn&#8217;t sufficient in our brave new architectural world.<\/span><\/p>\n<h3><b>Tracing and foreknowledge<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Which brings us to &#8220;Distributed Tracing,&#8221; a technology specifically developed to address the above problem with logging systems. I built out the <\/span><a href=\"https:\/\/lightstep.com\/dapper\"><span style=\"font-weight: 400;\">Dapper<\/span><\/a><span style=\"font-weight: 400;\"> project at Google myself. It certainly had its uses, especially for steady-state latency analysis, but we dealt with the data volume problem by applying braindead, entirely random, and very aggressive sampling. This has long been the elephant in the room for distributed tracing, and it&#8217;s the reason why Dapper was awkward to apply in on-call scenarios.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The obvious answer would be to avoid sampling altogether. For scaled-out microservices, though, the cost is a non-starter. It&#8217;s more realistic to <\/span><i><span style=\"font-weight: 400;\">defer<\/span><\/i><span style=\"font-weight: 400;\"> the sampling decision until the transaction has completed: this is an improvement, though that approach masks a crucial question: which traces should we sample, anyway? If we&#8217;re restricting our analysis to individual traces, we typically focus on &#8220;the slow ones&#8221; or those that result in an error; however, performance and reliability problems in production software are typically a byproduct of interference between transactions, and understanding that <\/span><i><span style=\"font-weight: 400;\">interference<\/span><\/i><span style=\"font-weight: 400;\"> involves much more sophisticated sampling strategies that aggregate across related traces that contend for the same resources.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">In any case, a single distributed trace is occasionally useful, but a bit of a hail mary. Sampling the right distributed traces and extracting meaningful, accessible insights is a broader challenge, yet much more valuable.<\/span><\/p>\n<h3><b>And about emulating Google (et al.) in the first place\u2026<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Another issue with &#8220;The Three Pillars&#8221; is the very notion that we should always aspire to build software that&#8217;s appropriate for the &#8220;planet-scale&#8221; infrastructure at Google (or Facebook, or Twitter, and so on). Long story short: <\/span><b>don&#8217;t emulate Google<\/b><span style=\"font-weight: 400;\">. This is not a dig on Google \u2013 there are some brilliant people there, and they&#8217;ve done some terrific work given their requirements.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">But! Google&#8217;s technologies are built to scale like crazy, and that isn&#8217;t necessarily &#8220;good&#8221;: Jeff Dean (one of those brilliant Googlers who deserves all of the accolades \u2013 he even <\/span><a href=\"https:\/\/www.quora.com\/What-are-all-the-Jeff-Dean-facts\"><span style=\"font-weight: 400;\">has his own meme<\/span><\/a><span style=\"font-weight: 400;\">) would sometimes talk about how it&#8217;s nearly impossible to design a software system that&#8217;s appropriate for more than 3-4 orders of magnitude of scale. Further, there is a natural tension between a system&#8217;s scalability and its feature set.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Google&#8217;s microservices generate about 5 <\/span><i><span style=\"font-weight: 400;\">billion<\/span><\/i><span style=\"font-weight: 400;\"> RPCs per second; building observability tools that scale to 5B RPCs\/sec, therefore, boils down to <\/span><b>building observability tools that are profoundly feature-poor<\/b><span style=\"font-weight: 400;\">. If your organization is doing more like 5 <\/span><i><span style=\"font-weight: 400;\">million<\/span><\/i><span style=\"font-weight: 400;\"> RPCs\/sec, that&#8217;s still quite impressive, but you should almost certainly not use what Google uses: at 1\/1000th the scale, you can afford much more powerful features.<\/span><\/p>\n<h2><b>Bits vs Benefits<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">So each &#8220;pillar&#8221; has a fatal flaw (or three), and that&#8217;s a problem. The other problem is even more fundamental: Metrics, Logs, and Distributed Traces are <\/span><b><i>just bits<\/i><\/b><span style=\"font-weight: 400;\">. Each describes a particular type of data structure, and when we think of them, we tend to think of the most trivial visualization of those data structures: metrics look like squiggly lines; logs look like a chronological listing of formatted strings; and traces look like those nested waterfall timing diagrams.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">None of the above directly addresses a particular pain point, use case, or business need. That is, with the &#8220;three pillars&#8221; orthodoxy, <\/span><b>we implicitly delegate the extraordinarily complex task of actually analyzing the metric, log, and trace data as &#8220;an exercise to the reader<\/b><span style=\"font-weight: 400;\">.&#8221; And, given the fatal flaws above and the subtle interactions and co-dependencies between these three types of data, our observability suffers greatly as a result.<\/span><\/p>\n<h2><b>Towards a Better Model<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">So metrics, logs, and traces aren\u2019t \u201cthe observability,\u201d they\u2019re just the telemetry. Then what is observability? If the raw data isn\u2019t intrinsically valuable, what is? Is Observability just a new word for Monitoring? And can we get it with a single fancy database?<\/span><\/p>\n<p><span style=\"font-weight: 400;\">These are all excellent questions with non-obvious answers. They\u2019re also out of scope for this article, but you can learn more about all of this here:\u00a0<u><a href=\"https:\/\/thenewstack.io\/observability-wont-replace-monitoring-because-it-shouldnt\/\" target=\"_blank\" rel=\"noopener\" data-saferedirecturl=\"https:\/\/www.google.com\/url?q=https:\/\/thenewstack.io\/observability-wont-replace-monitoring-because-it-shouldnt\/&amp;source=gmail&amp;ust=1612554635230000&amp;usg=AFQjCNFCdDyB3sZUCO6d1HWODjnaA4nuNQ\">Observability Won\u2019t Replace Monitoring (Because it Shouldn\u2019t)<\/a><\/u>. <\/span>There is a way to make telemetry valuable \u2013 transformative, even \u2013\u00a0but we\u2019ll need a better model for Observability first.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Have you heard about the &#8220;three pillars of observability&#8221; yet? No? The story goes like this: If you&#8217;re using microservices, you already know that they&#8217;re nearly impossible to understand using a conventional monitoring toolchain: since microservices were literally designed to prevent &#8220;two-pizza&#8221; DevOps teams from knowing about each other, it turns out that it&#8217;s incredibly<\/p>\n","protected":false},"author":61,"featured_media":10442,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_mi_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_newsletter_tier_id":0,"footnotes":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false}}},"categories":[1363,83,2143],"tags":[1785,494,1786,436,1497,20,4363],"jetpack_publicize_connections":[],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Debunking the &#039;Three Pillars of Observability&#039; Myth - Software Engineering Daily<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Debunking the &#039;Three Pillars of Observability&#039; Myth - Software Engineering Daily\" \/>\n<meta property=\"og:description\" content=\"Have you heard about the &#8220;three pillars of observability&#8221; yet? No? The story goes like this: If you&#8217;re using microservices, you already know that they&#8217;re nearly impossible to understand using a conventional monitoring toolchain: since microservices were literally designed to prevent &#8220;two-pizza&#8221; DevOps teams from knowing about each other, it turns out that it&#8217;s incredibly\" \/>\n<meta property=\"og:url\" content=\"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/\" \/>\n<meta property=\"og:site_name\" content=\"Software Engineering Daily\" \/>\n<meta property=\"article:author\" content=\"https:\/\/twitter.com\/el_bhs\" \/>\n<meta property=\"article:published_time\" content=\"2021-02-04T16:00:53+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-02-04T21:42:07+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-beware-observability-dogma-hero.png?fit=2040%2C1344&ssl=1\" \/>\n\t<meta property=\"og:image:width\" content=\"2040\" \/>\n\t<meta property=\"og:image:height\" content=\"1344\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Ben Sigelman\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@el_bhs\" \/>\n<meta name=\"twitter:site\" content=\"@software_daily\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ben Sigelman\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/\"},\"author\":{\"name\":\"Ben Sigelman\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/e68033e70b4c5c46638550d041e66b56\"},\"headline\":\"Debunking the &#8216;Three Pillars of Observability&#8217; Myth\",\"datePublished\":\"2021-02-04T16:00:53+00:00\",\"dateModified\":\"2021-02-04T21:42:07+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/\"},\"wordCount\":1304,\"publisher\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/#organization\"},\"keywords\":[\"Ben Sigelman\",\"Distributed Tracing\",\"Lightstep\",\"Logging\",\"metrics\",\"microservices\",\"three pillars of observability\"],\"articleSection\":[\"All Content\",\"Exclusive Articles\",\"Exclusive Content\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/\",\"url\":\"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/\",\"name\":\"Debunking the 'Three Pillars of Observability' Myth - Software Engineering Daily\",\"isPartOf\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/#website\"},\"datePublished\":\"2021-02-04T16:00:53+00:00\",\"dateModified\":\"2021-02-04T21:42:07+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/softwareengineeringdaily.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Debunking the &#8216;Three Pillars of Observability&#8217; Myth\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#website\",\"url\":\"https:\/\/softwareengineeringdaily.com\/\",\"name\":\"Software Engineering Daily\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/softwareengineeringdaily.com\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#organization\",\"name\":\"Software Engineering Daily\",\"url\":\"https:\/\/softwareengineeringdaily.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2022\/01\/cropped-logo-new.png?fit=296%2C139&ssl=1\",\"contentUrl\":\"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2022\/01\/cropped-logo-new.png?fit=296%2C139&ssl=1\",\"width\":296,\"height\":139,\"caption\":\"Software Engineering Daily\"},\"image\":{\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/twitter.com\/software_daily\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/e68033e70b4c5c46638550d041e66b56\",\"name\":\"Ben Sigelman\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/4c3d2ea5d2731ddbee5ab2a9b71ae52f?s=96&d=retro&r=pg\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/4c3d2ea5d2731ddbee5ab2a9b71ae52f?s=96&d=retro&r=pg\",\"caption\":\"Ben Sigelman\"},\"description\":\"Ben Sigelman is a cofounder and the CEO at Lightstep, a co-creator of Dapper (Google\u2019s distributed tracing system), and co-creator of the OpenTracing and OpenTelemetry projects (both part of the CNCF).\",\"sameAs\":[\"https:\/\/lightstep.com\/\",\"https:\/\/twitter.com\/el_bhs\",\"https:\/\/www.linkedin.com\/in\/bensigelman\/\",\"https:\/\/www.youtube.com\/lightstephq\"],\"url\":\"https:\/\/softwareengineeringdaily.com\/author\/bsigelman\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Debunking the 'Three Pillars of Observability' Myth - Software Engineering Daily","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/","og_locale":"en_US","og_type":"article","og_title":"Debunking the 'Three Pillars of Observability' Myth - Software Engineering Daily","og_description":"Have you heard about the &#8220;three pillars of observability&#8221; yet? No? The story goes like this: If you&#8217;re using microservices, you already know that they&#8217;re nearly impossible to understand using a conventional monitoring toolchain: since microservices were literally designed to prevent &#8220;two-pizza&#8221; DevOps teams from knowing about each other, it turns out that it&#8217;s incredibly","og_url":"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/","og_site_name":"Software Engineering Daily","article_author":"https:\/\/twitter.com\/el_bhs","article_published_time":"2021-02-04T16:00:53+00:00","article_modified_time":"2021-02-04T21:42:07+00:00","og_image":[{"width":2040,"height":1344,"url":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-beware-observability-dogma-hero.png?fit=2040%2C1344&ssl=1","type":"image\/png"}],"author":"Ben Sigelman","twitter_card":"summary_large_image","twitter_creator":"@el_bhs","twitter_site":"@software_daily","twitter_misc":{"Written by":"Ben Sigelman","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/#article","isPartOf":{"@id":"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/"},"author":{"name":"Ben Sigelman","@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/e68033e70b4c5c46638550d041e66b56"},"headline":"Debunking the &#8216;Three Pillars of Observability&#8217; Myth","datePublished":"2021-02-04T16:00:53+00:00","dateModified":"2021-02-04T21:42:07+00:00","mainEntityOfPage":{"@id":"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/"},"wordCount":1304,"publisher":{"@id":"https:\/\/softwareengineeringdaily.com\/#organization"},"keywords":["Ben Sigelman","Distributed Tracing","Lightstep","Logging","metrics","microservices","three pillars of observability"],"articleSection":["All Content","Exclusive Articles","Exclusive Content"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/","url":"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/","name":"Debunking the 'Three Pillars of Observability' Myth - Software Engineering Daily","isPartOf":{"@id":"https:\/\/softwareengineeringdaily.com\/#website"},"datePublished":"2021-02-04T16:00:53+00:00","dateModified":"2021-02-04T21:42:07+00:00","breadcrumb":{"@id":"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/softwareengineeringdaily.com\/2021\/02\/04\/debunking-the-three-pillars-of-observability-myth\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/softwareengineeringdaily.com\/"},{"@type":"ListItem","position":2,"name":"Debunking the &#8216;Three Pillars of Observability&#8217; Myth"}]},{"@type":"WebSite","@id":"https:\/\/softwareengineeringdaily.com\/#website","url":"https:\/\/softwareengineeringdaily.com\/","name":"Software Engineering Daily","description":"","publisher":{"@id":"https:\/\/softwareengineeringdaily.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/softwareengineeringdaily.com\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/softwareengineeringdaily.com\/#organization","name":"Software Engineering Daily","url":"https:\/\/softwareengineeringdaily.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/logo\/image\/","url":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2022\/01\/cropped-logo-new.png?fit=296%2C139&ssl=1","contentUrl":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2022\/01\/cropped-logo-new.png?fit=296%2C139&ssl=1","width":296,"height":139,"caption":"Software Engineering Daily"},"image":{"@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/twitter.com\/software_daily"]},{"@type":"Person","@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/e68033e70b4c5c46638550d041e66b56","name":"Ben Sigelman","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/softwareengineeringdaily.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/4c3d2ea5d2731ddbee5ab2a9b71ae52f?s=96&d=retro&r=pg","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4c3d2ea5d2731ddbee5ab2a9b71ae52f?s=96&d=retro&r=pg","caption":"Ben Sigelman"},"description":"Ben Sigelman is a cofounder and the CEO at Lightstep, a co-creator of Dapper (Google\u2019s distributed tracing system), and co-creator of the OpenTracing and OpenTelemetry projects (both part of the CNCF).","sameAs":["https:\/\/lightstep.com\/","https:\/\/twitter.com\/el_bhs","https:\/\/www.linkedin.com\/in\/bensigelman\/","https:\/\/www.youtube.com\/lightstephq"],"url":"https:\/\/softwareengineeringdaily.com\/author\/bsigelman\/"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2021\/02\/lightstep-beware-observability-dogma-hero.png?fit=2040%2C1344&ssl=1","jetpack_shortlink":"https:\/\/wp.me\/p7GuoD-2Ia","_links":{"self":[{"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/posts\/10426"}],"collection":[{"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/users\/61"}],"replies":[{"embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/comments?post=10426"}],"version-history":[{"count":0,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/posts\/10426\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/media\/10442"}],"wp:attachment":[{"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/media?parent=10426"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/categories?post=10426"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/softwareengineeringdaily.com\/wp-json\/wp\/v2\/tags?post=10426"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}