{"id":498,"date":"2021-01-17T17:16:48","date_gmt":"2021-01-17T16:16:48","guid":{"rendered":"https:\/\/ilmarkerm.eu\/blog\/?p=498"},"modified":"2021-01-19T08:09:07","modified_gmt":"2021-01-19T07:09:07","slug":"monitoring-oracle-listener-from-grafana","status":"publish","type":"post","link":"https:\/\/ilmarkerm.eu\/blog\/2021\/01\/monitoring-oracle-listener-from-grafana\/","title":{"rendered":"Monitoring Oracle listener from Grafana"},"content":{"rendered":"\n<p>I wanted to share some of the Grafana dashboards I&#8217;ve built recently to monitor Oracle database environments. Images for now, for your inspiration, so you could build your own.<\/p>\n\n\n\n<p>First up is Oracle database listener. Listener log is a very valuable source of information, that I think is often overlooked. For example just from monitoring listener logs you can get real time information if clients can connect to the database successfully or they get some error. Or so some specific client get an error only (misconfigured client), or some forgotten app is still running is hammering the listener with service name that does not exist anymore. Maybe some client is misbehaving and is trying to connect hundreds of times per second to the database, you will see it from the listener log, with the client information. Who are the clients still connecting with TCP and have not yet migrated over to TCPS connections like DBA-s are demanding? And so on.<\/p>\n\n\n\n<p>And from grafana you can also generate alerts.<\/p>\n\n\n\n<p>Here is the current state of my listener dashboard (this one is for human operators to drill down into issues, I have another dashboard for automatic alerts).<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/ilmarkerm.eu\/blog\/wp-content\/uploads\/2021\/01\/listener_dashboard.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"548\" src=\"https:\/\/ilmarkerm.eu\/blog\/wp-content\/uploads\/2021\/01\/listener_dashboard-1024x548.png\" alt=\"\" class=\"wp-image-499\" srcset=\"https:\/\/ilmarkerm.eu\/blog\/wp-content\/uploads\/2021\/01\/listener_dashboard-1024x548.png 1024w, https:\/\/ilmarkerm.eu\/blog\/wp-content\/uploads\/2021\/01\/listener_dashboard-300x161.png 300w, https:\/\/ilmarkerm.eu\/blog\/wp-content\/uploads\/2021\/01\/listener_dashboard-768x411.png 768w, https:\/\/ilmarkerm.eu\/blog\/wp-content\/uploads\/2021\/01\/listener_dashboard-1536x822.png 1536w, https:\/\/ilmarkerm.eu\/blog\/wp-content\/uploads\/2021\/01\/listener_dashboard-2048x1096.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>Data collector was published earlier:<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-ilmar-kerm wp-block-embed-ilmar-kerm\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"u8uwlVW7vO\"><a href=\"https:\/\/ilmarkerm.eu\/blog\/2021\/01\/mining-log-files-under-adr-base\/\">Mining log files under ADR base<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;Mining log files under ADR base&#8221; &#8212; Ilmar Kerm\" src=\"https:\/\/ilmarkerm.eu\/blog\/2021\/01\/mining-log-files-under-adr-base\/embed\/#?secret=u8uwlVW7vO\" data-secret=\"u8uwlVW7vO\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>Some InfluxQL queries behind these panels:<\/p>\n\n\n\n<script src=\"https:\/\/gist.github.com\/ilmarkerm\/a851dc6d1dbe8121bb43b4c572c3f765.js\"><\/script>\n\n\n\n<p>I think &#8220;Failed connections by service&#8221; is a very good metric to create an alert on.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I wanted to share some of the Grafana dashboards I&#8217;ve built recently to monitor Oracle database environments. Images for now, for your inspiration, so you could build your own. First up is Oracle database listener. Listener log is a very valuable source of information, that I think is often overlooked. For example just from monitoring [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[58,4],"class_list":["post-498","post","type-post","status-publish","format-standard","hentry","category-blog-entry","tag-monitoring","tag-oracle"],"_links":{"self":[{"href":"https:\/\/ilmarkerm.eu\/blog\/wp-json\/wp\/v2\/posts\/498","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ilmarkerm.eu\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ilmarkerm.eu\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ilmarkerm.eu\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ilmarkerm.eu\/blog\/wp-json\/wp\/v2\/comments?post=498"}],"version-history":[{"count":6,"href":"https:\/\/ilmarkerm.eu\/blog\/wp-json\/wp\/v2\/posts\/498\/revisions"}],"predecessor-version":[{"id":508,"href":"https:\/\/ilmarkerm.eu\/blog\/wp-json\/wp\/v2\/posts\/498\/revisions\/508"}],"wp:attachment":[{"href":"https:\/\/ilmarkerm.eu\/blog\/wp-json\/wp\/v2\/media?parent=498"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ilmarkerm.eu\/blog\/wp-json\/wp\/v2\/categories?post=498"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ilmarkerm.eu\/blog\/wp-json\/wp\/v2\/tags?post=498"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}