{"id":9013,"date":"2020-09-17T10:42:48","date_gmt":"2020-09-17T08:42:48","guid":{"rendered":"https:\/\/www.codemotion.com\/magazine\/?p=9013"},"modified":"2022-01-05T20:05:49","modified_gmt":"2022-01-05T19:05:49","slug":"how-to-monitor-microservices","status":"publish","type":"post","link":"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/","title":{"rendered":"How to Monitor Microservices"},"content":{"rendered":"\t\t\t\t<div class=\"wp-block-uagb-table-of-contents uagb-toc__align-left uagb-toc__columns-1  uagb-block-1fa2a1b7      \"\n\t\t\t\t\tdata-scroll= \"1\"\n\t\t\t\t\tdata-offset= \"30\"\n\t\t\t\t\tstyle=\"\"\n\t\t\t\t>\n\t\t\t\t<div class=\"uagb-toc__wrap\">\n\t\t\t\t\t\t<div class=\"uagb-toc__title\">\n\t\t\t\t\t\t\tTable Of Contents\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"uagb-toc__list-wrap \">\n\t\t\t\t\t\t<ol class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#what-is-health-monitoring\" class=\"uagb-toc-link__trigger\">What is Health Monitoring?<\/a><li class=\"uagb-toc__list\"><a href=\"#why-is-monitoring-the-health-of-microservices-important\" class=\"uagb-toc-link__trigger\">Why is Monitoring the Health of Microservices Important?<\/a><li class=\"uagb-toc__list\"><a href=\"#what-to-check-in-health-checks\" class=\"uagb-toc-link__trigger\">What to Check In Health Checks?<\/a><li class=\"uagb-toc__list\"><a href=\"#logging-microservices-health-checks\" class=\"uagb-toc-link__trigger\">Logging Microservices Health Checks<\/a><\/ol>\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\n\n\n<p>At their core, <strong><span id=\"urn:enhancement-a02c00bf\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/microservices\">microservices<\/span><\/strong> are a response to the monolithic <span id=\"urn:enhancement-ecede866\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/application_software\">applications<\/span> of yesteryear. Rather than designing <span id=\"urn:enhancement-d4b2f7cf\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/mobile_app\">apps<\/span> as one massive entity that is so interconnected there is no such thing as a small problem anymore, <span id=\"urn:enhancement-a93b835f\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/microservices\">microservices<\/span> instead break even the most complicated <span id=\"urn:enhancement-7620fb25\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/mobile_app\">apps<\/span> down into a series of individual and independently deployable parts.<\/p>\n\n\n\n<p>The <strong>benefit<\/strong> here is that not only can smaller and more specifically focused <span id=\"urn:enhancement-c48f2d6e\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/team\">teams<\/span> take control over their own services, but you also don&#8217;t have to wait for &#8220;everything&#8221; to be done before getting your <span id=\"urn:enhancement-2042dad5\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/mobile_app\">app<\/span> into the hands of end <span id=\"urn:enhancement-340378c4\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/user_computing\">users<\/span>. <strong>You can roll out functionality as it is finished<\/strong>, trusting that it will eventually add up to that larger &#8220;whole&#8221; you were building in the first place.<\/p>\n\n\n\n<p>But at the same time, simply buying into the microservices architecture alone isn&#8217;t enough to guarantee success. <strong>You&#8217;ll still need to monitor your <span id=\"urn:enhancement-3c94afe1\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/microservices\">microservices<\/span> on a regular basis<\/strong> &#8211; something that is important for a wide array of different reasons, all of which are more than worth exploring.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What is Health Monitoring?<\/h2>\n\n\n\n<p>Generally speaking, <strong>health monitoring with regards to <span id=\"urn:enhancement-d46b3246\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/microservices\">microservices<\/span><\/strong> is exactly what it sounds like: the <span id=\"urn:enhancement-b9a67628\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/process_computing\">process<\/span> of <span id=\"urn:enhancement-a03ddd52\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/mobile_application_development\">using<\/span> an <a href=\"https:\/\/www.influxdata.com\/solutions\/application-performance-monitoring-apm\/\" target=\"_blank\" aria-label=\"undefined (opens in a new tab)\" rel=\"noreferrer noopener\">application performance monitoring<\/a> or related <span id=\"urn:enhancement-4a3fc60\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/tool\">tool<\/span> to gain better insight into all key areas of your <span id=\"urn:enhancement-6f1e1075\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/mobile_app\">app<\/span> and its <span id=\"urn:enhancement-e1f55d1b\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/performance\">performance<\/span>, allowing you to make better and more informed <span id=\"urn:enhancement-6c1adb21\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/decision-making\">decisions<\/span> as development goes on.<\/p>\n\n\n\n<p>Really, it&#8217;s about gaining a much-needed level of visibility into not only how your <span id=\"urn:enhancement-2f758edd\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/application_software\">application<\/span> is functioning as a whole, but how each <span id=\"urn:enhancement-aa7c4104\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/microservices\">microservice<\/span> is doing individually and how they all relate to one another and <span id=\"urn:enhancement-17482fa4\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/empowerment\">empower<\/span> one another to become something far more important as a collective than they could be individually.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/monitoring-1024x576.jpg\" alt=\"monitoring health of microservices\" class=\"wp-image-9026\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/monitoring-1024x576.jpg 1024w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/monitoring-300x169.jpg 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/monitoring-768x432.jpg 768w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/monitoring-896x504.jpg 896w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/monitoring-400x225.jpg 400w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/monitoring.jpg 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n\n<p>This type of <span id=\"urn:enhancement-999eb3b9\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/tool\">tool<\/span> will allow you to dive deep into a number of core areas, including ones like:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Your <strong>application metrics<\/strong>. You&#8217;ll be able to see exactly what tasks were completed over a given time (with user registrations being one example), allowing you to see how things are functioning in relation to your long-term goals. Note that things like <a href=\"https:\/\/www.influxdata.com\/solutions\/network-monitoring\/\" target=\"_blank\" aria-label=\"undefined (opens in a new tab)\" rel=\"noreferrer noopener\">network performance monitoring<\/a> would definitely fall under this umbrella.<\/li><li><strong>Platform metrics<\/strong>. These give you better insight into how your microservices are functioning on a base level, and can help clue you in on situations when things aren&#8217;t going as they should. These types of metrics are invaluable for the process of <a href=\"https:\/\/www.codemotion.com\/magazine\/dev-hub\/backend-dev\/troubleshooting-debugging-microservices\/\">debugging microservices<\/a> because they don&#8217;t just tell you what went wrong, but why and what to do about it.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Why is Monitoring the Health of Microservices Important?<\/h2>\n\n\n\n<p>Note that all of this is particularly important because it&#8217;s providing you a critical <span id=\"urn:enhancement-ca4ade9d\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/context_computing\">context<\/span> that you wouldn&#8217;t necessarily have access to on your own. Remember that in a microservices architecture, each &#8220;portion&#8221; of the <span id=\"urn:enhancement-78bc168b\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/mobile_app\">app<\/span> is essentially treated as its own unique service. Those services then combine together to bring end <span id=\"urn:enhancement-c13fafa0\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/user_computing\">users<\/span> the functionality they will soon come to depend on.<\/p>\n\n\n\n<p>If a problem exists within one of your services, you need to know about it as quickly as possible so that you can do something about it. But more than that, you don&#8217;t need to simply know that the problem occurred at all. You need to know why it happened, when it happened and under what conditions it was allowed to happen. All of this will allow you to go in and make the necessary changes to preserve that functionality as soon as you can.<\/p>\n\n\n\n<p>This plays into one of the major advantages that <span id=\"urn:enhancement-f9c96258\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/microservices\">microservices<\/span> bring to the <span id=\"urn:enhancement-2ea01797\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/table_database\">table<\/span> in the first place &#8211; the fact that you don&#8217;t have to worry about how <strong>troubleshooting-related changes to one service impact the <span id=\"urn:enhancement-a32b0036\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/representational_state_transfer\">rest<\/span> of the <span id=\"urn:enhancement-4f9e8b5d\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/mobile_app\">app<\/span><\/strong>. You can go in, make any necessary adjustments and keep everything <span id=\"urn:enhancement-c161648c\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/online_and_offline\">online<\/span> and functioning exactly as it was intended, absolutely no exceptions.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What to Check In Health Checks?<\/h2>\n\n\n\n<p>As you <span id=\"urn:enhancement-acafa42f\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/performance\">perform<\/span> health checks when monitoring your <span id=\"urn:enhancement-61b5d60b\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/microservices\">microservices<\/span>, you&#8217;ll want to look at a few core areas like:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Your <strong>containers<\/strong>. You don&#8217;t just need to know how they&#8217;re functioning in relation to the rest of the app. You also need to know what is going on inside them.<\/li><li><strong>Services that may exist in more than one location<\/strong>, all in the name of getting the clearest possible picture about what is really going on.<\/li><li><strong>Service performance<\/strong>. Note that this is a different concept than container performance as outlined above.<\/li><li>The performance of any and all associated <strong><a href=\"https:\/\/www.codemotion.com\/magazine\/dev-hub\/backend-dev\/api-economy-code-api-money\/\">APIs<\/a><\/strong>.<\/li><li><strong>Organizational structure<\/strong>. Periodically, you should always take the chance to confirm that your microservices are aligned with your long-term goals and what you&#8217;re trying to accomplish in the end.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Logging Microservices Health Checks<\/h2>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"910\" height=\"512\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/logging.jpg\" alt=\"logging microservices\" class=\"wp-image-9027\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/logging.jpg 910w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/logging-300x169.jpg 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/logging-768x432.jpg 768w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/logging-896x504.jpg 896w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/logging-400x225.jpg 400w\" sizes=\"auto, (max-width: 910px) 100vw, 910px\" \/><\/figure><\/div>\n\n\n\n<p>Finally, we arrive at the concept of <strong><a href=\"https:\/\/www.codemotion.com\/magazine\/dev-hub\/big-data-analyst\/logging-in-python-a-broad-gentle-introduction\/\">logging<\/a><\/strong> those health checks: something that any <span id=\"urn:enhancement-67173397\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/application_software\">application<\/span> <span id=\"urn:enhancement-499c910\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/performance\">performance<\/span> monitoring <span id=\"urn:enhancement-2dfe46c2\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/tool\">tool<\/span> worth its time should allow you to do. Logging health checks is important because it allows you to always reference your past data to make better and more informed <span id=\"urn:enhancement-9d1aab6c\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/decision-making\">decisions<\/span> in the <span id=\"urn:enhancement-ea6171d8\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/future\">future<\/span>. Essentially, it allows you to learn from the mistakes of the past to make sure that they don&#8217;t repeat themselves in the <span id=\"urn:enhancement-d1438b\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/future\">future<\/span>.<\/p>\n\n\n\n<p>By logging health checks, you&#8217;re putting yourself in an excellent position to uncover certain trends and patterns that likely would have otherwise gone undiscovered. If you&#8217;re dealing with certain recurring issues, you&#8217;ll actually know this as soon as possible &#8211; allowing you to properly &#8220;treat the disease and not just the symptom,&#8221; so to speak. Not only does this dramatically streamline the overall <span id=\"urn:enhancement-6b8ac34\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/software_development_process\">development process<\/span>, but it also helps create a far better <span id=\"urn:enhancement-db896cf1\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/experience\">experience<\/span> for end <span id=\"urn:enhancement-f1cea6a2\" class=\"textannotation disambiguated wl-thing\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/user_computing\">users<\/span> &#8211; which may very well be the most important benefit of all.<\/p>\n\n\n","protected":false},"excerpt":{"rendered":"<p>At their core, microservices are a response to the monolithic applications of yesteryear. Rather than designing apps as one massive entity that is so interconnected there is no such thing as a small problem anymore, microservices instead break even the most complicated apps down into a series of individual and independently deployable parts. The benefit&#8230; <a class=\"more-link\" href=\"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/\">Read more<\/a><\/p>\n","protected":false},"author":98,"featured_media":9017,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_editorskit_title_hidden":false,"_editorskit_reading_time":4,"_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}","_uag_custom_page_level_css":"","_genesis_hide_title":false,"_genesis_hide_breadcrumbs":false,"_genesis_hide_singular_image":false,"_genesis_hide_footer_widgets":false,"_genesis_custom_body_class":"","_genesis_custom_post_class":"","_genesis_layout":"","footnotes":""},"categories":[3355],"tags":[4359],"collections":[],"class_list":{"0":"post-9013","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-microservices","8":"tag-testing","9":"entry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.9 (Yoast SEO v26.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>How to Monitor Microservices - Codemotion Magazine<\/title>\n<meta name=\"description\" content=\"Microservices architecture brings several advantages. However, you still need to monitor your microservices on a regular basis.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Monitor Microservices\" \/>\n<meta property=\"og:description\" content=\"Microservices architecture brings several advantages. However, you still need to monitor your microservices on a regular basis.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/\" \/>\n<meta property=\"og:site_name\" content=\"Codemotion Magazine\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Codemotion.Italy\/\" \/>\n<meta property=\"article:published_time\" content=\"2020-09-17T08:42:48+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-01-05T19:05:49+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"675\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Laila Mahran\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:site\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Laila Mahran\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/\"},\"author\":{\"name\":\"Laila Mahran\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/d845be994d3312eeaebf06a4cd90e602\"},\"headline\":\"How to Monitor Microservices\",\"datePublished\":\"2020-09-17T08:42:48+00:00\",\"dateModified\":\"2022-01-05T19:05:49+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/\"},\"wordCount\":954,\"publisher\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash.jpg\",\"keywords\":[\"Testing\"],\"articleSection\":[\"Microservices\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/\",\"name\":\"How to Monitor Microservices - Codemotion Magazine\",\"isPartOf\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash.jpg\",\"datePublished\":\"2020-09-17T08:42:48+00:00\",\"dateModified\":\"2022-01-05T19:05:49+00:00\",\"description\":\"Microservices architecture brings several advantages. However, you still need to monitor your microservices on a regular basis.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/#primaryimage\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash.jpg\",\"contentUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash.jpg\",\"width\":1200,\"height\":675,\"caption\":\"monitoring\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.codemotion.com\/magazine\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Backend\",\"item\":\"https:\/\/www.codemotion.com\/magazine\/backend\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How to Monitor Microservices\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#website\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/\",\"name\":\"Codemotion Magazine\",\"description\":\"We code the future. Together\",\"publisher\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.codemotion.com\/magazine\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\",\"name\":\"Codemotion\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png\",\"contentUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png\",\"width\":225,\"height\":225,\"caption\":\"Codemotion\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/Codemotion.Italy\/\",\"https:\/\/x.com\/CodemotionIT\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/d845be994d3312eeaebf06a4cd90e602\",\"name\":\"Laila Mahran\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/62733b1fe918f8014ed451840a370fee105750ec6e00b58b09b635bd830072e2?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/62733b1fe918f8014ed451840a370fee105750ec6e00b58b09b635bd830072e2?s=96&d=mm&r=g\",\"caption\":\"Laila Mahran\"},\"url\":\"https:\/\/www.codemotion.com\/magazine\/author\/laila-mahran\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to Monitor Microservices - Codemotion Magazine","description":"Microservices architecture brings several advantages. However, you still need to monitor your microservices on a regular basis.","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:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/","og_locale":"en_US","og_type":"article","og_title":"How to Monitor Microservices","og_description":"Microservices architecture brings several advantages. However, you still need to monitor your microservices on a regular basis.","og_url":"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/","og_site_name":"Codemotion Magazine","article_publisher":"https:\/\/www.facebook.com\/Codemotion.Italy\/","article_published_time":"2020-09-17T08:42:48+00:00","article_modified_time":"2022-01-05T19:05:49+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash.jpg","type":"image\/jpeg"}],"author":"Laila Mahran","twitter_card":"summary_large_image","twitter_creator":"@CodemotionIT","twitter_site":"@CodemotionIT","twitter_misc":{"Written by":"Laila Mahran","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/#article","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/"},"author":{"name":"Laila Mahran","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/d845be994d3312eeaebf06a4cd90e602"},"headline":"How to Monitor Microservices","datePublished":"2020-09-17T08:42:48+00:00","dateModified":"2022-01-05T19:05:49+00:00","mainEntityOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/"},"wordCount":954,"publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash.jpg","keywords":["Testing"],"articleSection":["Microservices"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/","url":"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/","name":"How to Monitor Microservices - Codemotion Magazine","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/#primaryimage"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash.jpg","datePublished":"2020-09-17T08:42:48+00:00","dateModified":"2022-01-05T19:05:49+00:00","description":"Microservices architecture brings several advantages. However, you still need to monitor your microservices on a regular basis.","breadcrumb":{"@id":"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/#primaryimage","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash.jpg","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash.jpg","width":1200,"height":675,"caption":"monitoring"},{"@type":"BreadcrumbList","@id":"https:\/\/www.codemotion.com\/magazine\/microservices\/how-to-monitor-microservices\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.codemotion.com\/magazine\/"},{"@type":"ListItem","position":2,"name":"Backend","item":"https:\/\/www.codemotion.com\/magazine\/backend\/"},{"@type":"ListItem","position":3,"name":"How to Monitor Microservices"}]},{"@type":"WebSite","@id":"https:\/\/www.codemotion.com\/magazine\/#website","url":"https:\/\/www.codemotion.com\/magazine\/","name":"Codemotion Magazine","description":"We code the future. Together","publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.codemotion.com\/magazine\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.codemotion.com\/magazine\/#organization","name":"Codemotion","url":"https:\/\/www.codemotion.com\/magazine\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","width":225,"height":225,"caption":"Codemotion"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Codemotion.Italy\/","https:\/\/x.com\/CodemotionIT"]},{"@type":"Person","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/d845be994d3312eeaebf06a4cd90e602","name":"Laila Mahran","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/62733b1fe918f8014ed451840a370fee105750ec6e00b58b09b635bd830072e2?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/62733b1fe918f8014ed451840a370fee105750ec6e00b58b09b635bd830072e2?s=96&d=mm&r=g","caption":"Laila Mahran"},"url":"https:\/\/www.codemotion.com\/magazine\/author\/laila-mahran\/"}]}},"featured_image_src":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash-600x400.jpg","featured_image_src_square":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash-600x600.jpg","author_info":{"display_name":"Laila Mahran","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/laila-mahran\/"},"uagb_featured_image_src":{"full":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash.jpg",1200,675,false],"thumbnail":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash-150x150.jpg",150,150,true],"medium":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash-300x169.jpg",300,169,true],"medium_large":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash-768x432.jpg",768,432,true],"large":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash-1024x576.jpg",1024,576,true],"1536x1536":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash.jpg",1200,675,false],"2048x2048":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash.jpg",1200,675,false],"small-home-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash.jpg",100,56,false],"sidebar-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash-180x128.jpg",180,128,true],"genesis-singular-images":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash-896x504.jpg",896,504,true],"archive-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash-400x225.jpg",400,225,true],"gb-block-post-grid-landscape":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash-600x400.jpg",600,400,true],"gb-block-post-grid-square":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2020\/09\/luke-chesser-JKUTrJ4vK00-unsplash-600x600.jpg",600,600,true]},"uagb_author_info":{"display_name":"Laila Mahran","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/laila-mahran\/"},"uagb_comment_info":0,"uagb_excerpt":"At their core, microservices are a response to the monolithic applications of yesteryear. Rather than designing apps as one massive entity that is so interconnected there is no such thing as a small problem anymore, microservices instead break even the most complicated apps down into a series of individual and independently deployable parts. The benefit&#8230;&hellip;","lang":"en","_links":{"self":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/9013","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/users\/98"}],"replies":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/comments?post=9013"}],"version-history":[{"count":7,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/9013\/revisions"}],"predecessor-version":[{"id":15142,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/9013\/revisions\/15142"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media\/9017"}],"wp:attachment":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media?parent=9013"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/categories?post=9013"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/tags?post=9013"},{"taxonomy":"collections","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/collections?post=9013"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}