{"id":25080,"date":"2023-05-09T16:03:50","date_gmt":"2023-05-09T14:03:50","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/?p=25080"},"modified":"2024-09-11T10:18:45","modified_gmt":"2024-09-11T08:18:45","slug":"wildfly-from-log-to-dashboard-with-dynatrace","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/","title":{"rendered":"WildFly: From Log to Dashboard with dynatrace"},"content":{"rendered":"\n<p>In my previous <a href=\"https:\/\/www.dbi-services.com\/blog\/dynatrace-first-steps\/\" target=\"_blank\" rel=\"noreferrer noopener\">dynatrace blog<\/a>, I explained how to deploy OneAgent on a Virtual Machine which hosts WildFly. In this one, I will tell you:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>How to enable log centralization<\/li>\n\n\n\n<li>Extract an attribute from log<\/li>\n\n\n\n<li>Convert it to metric<\/li>\n\n\n\n<li>Display it in a dashboard.<\/li>\n<\/ul>\n\n\n\n<p>Before that, to be able to track time taken by each request in access log, we must enable &#8220;record-request-start-time&#8221; in WildFly. With <code>jboss-cli.sh<\/code>, command to achieve that is:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n\/subsystem=undertow\/server=default-server\/https-listener=https:write-attribute(name=record-request-start-time,value=true)\nreload\n<\/pre><\/div>\n\n\n<p>Then, we are ready for next steps.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Enable Log Centralization<\/h2>\n\n\n\n<p>dynatrace OneAgent can centralize log. To do that, we need to declare a new log source. Go in Settings, Log Monitoring, Custom log source configuration:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"267\" src=\"http:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_02_08-Custom-log-source-configuration-Environment-Settings-.png\" alt=\"\" class=\"wp-image-25106\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_02_08-Custom-log-source-configuration-Environment-Settings-.png 1000w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_02_08-Custom-log-source-configuration-Environment-Settings--300x80.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_02_08-Custom-log-source-configuration-Environment-Settings--768x205.png 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<p>I click &#8220;Add custom log source&#8221;:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img decoding=\"async\" src=\"http:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_03_03-Dynatrace.png\" alt=\"\" class=\"wp-image-25107\" width=\"600\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_03_03-Dynatrace.png 1000w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_03_03-Dynatrace-300x249.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_03_03-Dynatrace-768x638.png 768w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<p>Set a name and a process group which will make filtering and searches easier. Then, we must add path to the log we want to monitor:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized is-style-default\"><img decoding=\"async\" src=\"http:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_04_07-Dynatrace.png\" alt=\"\" class=\"wp-image-25108\" width=\"400\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_04_07-Dynatrace.png 640w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_04_07-Dynatrace-292x300.png 292w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<p>access_log is enough for this blog.<\/p>\n\n\n\n<p>Next, enable this log source. Still under &#8220;Log Monitoring&#8221; settings, go in &#8220;Log sources and storage&#8221; and select &#8220;Process groups perspective&#8221; tab and tick &#8220;JBoss standalone wildfly-*.Final&#8221; process group:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"447\" src=\"http:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_12_45-Log-sources-and-storage-Dynatrace-1024x447.png\" alt=\"\" class=\"wp-image-25109\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_12_45-Log-sources-and-storage-Dynatrace-1024x447.png 1024w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_12_45-Log-sources-and-storage-Dynatrace-300x131.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_12_45-Log-sources-and-storage-Dynatrace-768x335.png 768w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_12_45-Log-sources-and-storage-Dynatrace.png 1028w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>This will ensure that any new host having the same process group will have logs centralization enabled as well. Click &#8220;Save changes&#8221;.<\/p>\n\n\n\n<p>Now, once we generated some traffic to the web application, we can confirm that logs are gathered. Go in &#8220;Observe and explore&#8221; and Logs:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"403\" src=\"http:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_16_35-Logs-and-events-dbi-services-1024x403.png\" alt=\"\" class=\"wp-image-25110\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_16_35-Logs-and-events-dbi-services-1024x403.png 1024w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_16_35-Logs-and-events-dbi-services-300x118.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_16_35-Logs-and-events-dbi-services-768x302.png 768w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_16_35-Logs-and-events-dbi-services.png 1080w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Extract Attribute<\/h2>\n\n\n\n<p>An access log line does look like that:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n192.168.33.1 - - &#x5B;08\/May\/2023:15:42:36 +0000] &quot;GET \/helloworld\/ HTTP\/1.1&quot; 200 97517 &quot;-&quot; &quot;Apache-HttpClient\/4.5.13 (Java\/1.8.0_361)&quot; Cookie: &quot;-&quot; Set-Cookie: &quot;JSESSIONID=SvK9ffmT******************************_qYylD.srv-linux-wls-ols-1; path=\/helloworld&quot; SessionID: SvK9ffmT******************************_qYylD Thread: &quot;default task-333&quot; TimeTaken: 0.822\n<\/pre><\/div>\n\n\n<p>Interesting part is at end of each line: <code>TimeTaken: 0.822<\/code><\/p>\n\n\n\n<p>For now, it is just part of &#8220;content&#8221; of log and I want to extract it so that it is queriable.<\/p>\n\n\n\n<p>I will add a new processing ingest pipeline:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"644\" height=\"528\" src=\"http:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-12_33_37-Processing-Environment-Settings-Dynatrace-\u2014-Mozil.png\" alt=\"\" class=\"wp-image-25119\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-12_33_37-Processing-Environment-Settings-Dynatrace-\u2014-Mozil.png 644w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-12_33_37-Processing-Environment-Settings-Dynatrace-\u2014-Mozil-300x246.png 300w\" sizes=\"auto, (max-width: 644px) 100vw, 644px\" \/><\/figure>\n\n\n\n<p>Matcher is a mandatory filter to which we want to apply the rule.<\/p>\n\n\n\n<p>Processor definition defines how we want to manipulate data. Here is the meaning of each line:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.dynatrace.com\/support\/help\/platform\/grail\/dynatrace-query-language\/commands#parse\" target=\"_blank\" rel=\"noreferrer noopener\">PARSE<\/a> is a DQL (Dynatrace Query Language) function. content is the log line<\/li>\n\n\n\n<li>LD matches any characters<\/li>\n\n\n\n<li>&#8216;TimeTake: &#8216; is an exact matched string<\/li>\n\n\n\n<li>DOUBLE matches a float number. Match will be stored in <code>timetaken<\/code> variable<\/li>\n<\/ol>\n\n\n\n<p>While creating a new rule, it is possible to test it against a log. This is extremely convenient, especially if you are doing it from Logs menu as it is pre-populated:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"598\" src=\"http:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-12_33_49-Processing-Environment-Settings-Dynatrace-\u2014-Mozil-1024x598.png\" alt=\"\" class=\"wp-image-25123\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-12_33_49-Processing-Environment-Settings-Dynatrace-\u2014-Mozil-1024x598.png 1024w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-12_33_49-Processing-Environment-Settings-Dynatrace-\u2014-Mozil-300x175.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-12_33_49-Processing-Environment-Settings-Dynatrace-\u2014-Mozil-768x448.png 768w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-12_33_49-Processing-Environment-Settings-Dynatrace-\u2014-Mozil.png 1197w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Despite the error displayed during testing, which could happen as per dynatrace support, the rule is ok. I click save and generate new load to the web application as this will be applied once new logs are stored. I could use another Matcher, but this is the more generic one I found.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Convert to Metric<\/h2>\n\n\n\n<p>Now, I want to store that attribute as a metric to be able to plot it in graphs. In Metrics extraction section of Log Monitoring Settings, I click &#8220;Add log metric&#8221;:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img decoding=\"async\" src=\"http:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-15_28_56-Log-metrics-Environment-Settings-1024x907.png\" alt=\"\" class=\"wp-image-25128\" width=\"768\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-15_28_56-Log-metrics-Environment-Settings-1024x907.png 1024w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-15_28_56-Log-metrics-Environment-Settings-300x266.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-15_28_56-Log-metrics-Environment-Settings-768x680.png 768w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-15_28_56-Log-metrics-Environment-Settings.png 1407w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><em>Metric key<\/em> is automaticaly prepened by <code>log.<\/code>. I use same matcher as log extraction matcher. For metric measurement, I change it to &#8220;Attribute value&#8221; instead of &#8220;Occurence of logs records&#8221; which is a simple line count. Finally, I select the source attribute <code>timetaken <\/code>as defined in Processor definition in previous chapter. I will not add any dimension as I have only one server and only one application (helloworld).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Dashboard<\/h2>\n\n\n\n<p>Creating a graph is the easy part. Go in &#8220;Data explorer&#8221; menu and search for the metric:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img decoding=\"async\" src=\"http:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-15_38_00-Data-explorer-1024x780.png\" alt=\"\" class=\"wp-image-25133\" width=\"764\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-15_38_00-Data-explorer-1024x780.png 1024w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-15_38_00-Data-explorer-300x229.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-15_38_00-Data-explorer-768x585.png 768w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-15_38_00-Data-explorer.png 1434w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Click on finding and &#8220;Run Query&#8221;. Finally, a click on &#8220;Pin to dashboard&#8221; to add it. After more customization, here is how it could look like:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img decoding=\"async\" src=\"http:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-15_56_20-WildFly-1024x710.png\" alt=\"\" class=\"wp-image-25147\" width=\"720\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-15_56_20-WildFly-1024x710.png 1024w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-15_56_20-WildFly-300x208.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-15_56_20-WildFly-768x533.png 768w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-09-15_56_20-WildFly.png 1270w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Here I plotted three times the same metric but by applying different function on it:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Maximum<\/li>\n\n\n\n<li>Minimum<\/li>\n\n\n\n<li>Median<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>In my previous dynatrace blog, I explained how to deploy OneAgent on a Virtual Machine which hosts WildFly. In this one, I will tell you: Before that, to be able to track time taken by each request in access log, we must enable &#8220;record-request-start-time&#8221; in WildFly. With jboss-cli.sh, command to achieve that is: Then, we [&hellip;]<\/p>\n","protected":false},"author":40,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[197],"tags":[2918,143,1100],"type_dbi":[],"class_list":["post-25080","post","type-post","status-publish","format-standard","hentry","category-application-integration-middleware","tag-dynatrace","tag-monitoring","tag-wildfly"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>WildFly: From Log to Dashboard with dynatrace - dbi Blog<\/title>\n<meta name=\"description\" content=\"How to extract attribute, convert to metrics and create a dashboard in dynatrace\" \/>\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.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"WildFly: From Log to Dashboard with dynatrace\" \/>\n<meta property=\"og:description\" content=\"How to extract attribute, convert to metrics and create a dashboard in dynatrace\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2023-05-09T14:03:50+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-09-11T08:18:45+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_02_08-Custom-log-source-configuration-Environment-Settings-.png\" \/>\n<meta name=\"author\" content=\"Middleware Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Middleware Team\" \/>\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.dbi-services.com\\\/blog\\\/wildfly-from-log-to-dashboard-with-dynatrace\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wildfly-from-log-to-dashboard-with-dynatrace\\\/\"},\"author\":{\"name\":\"Middleware Team\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/8d8563acfc6e604cce6507f45bac0ea1\"},\"headline\":\"WildFly: From Log to Dashboard with dynatrace\",\"datePublished\":\"2023-05-09T14:03:50+00:00\",\"dateModified\":\"2024-09-11T08:18:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wildfly-from-log-to-dashboard-with-dynatrace\\\/\"},\"wordCount\":583,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wildfly-from-log-to-dashboard-with-dynatrace\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2023\\\/05\\\/2023-05-08-15_02_08-Custom-log-source-configuration-Environment-Settings-.png\",\"keywords\":[\"dynatrace\",\"Monitoring\",\"WildFly\"],\"articleSection\":[\"Application integration &amp; Middleware\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wildfly-from-log-to-dashboard-with-dynatrace\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wildfly-from-log-to-dashboard-with-dynatrace\\\/\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wildfly-from-log-to-dashboard-with-dynatrace\\\/\",\"name\":\"WildFly: From Log to Dashboard with dynatrace - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wildfly-from-log-to-dashboard-with-dynatrace\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wildfly-from-log-to-dashboard-with-dynatrace\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2023\\\/05\\\/2023-05-08-15_02_08-Custom-log-source-configuration-Environment-Settings-.png\",\"datePublished\":\"2023-05-09T14:03:50+00:00\",\"dateModified\":\"2024-09-11T08:18:45+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/8d8563acfc6e604cce6507f45bac0ea1\"},\"description\":\"How to extract attribute, convert to metrics and create a dashboard in dynatrace\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wildfly-from-log-to-dashboard-with-dynatrace\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wildfly-from-log-to-dashboard-with-dynatrace\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wildfly-from-log-to-dashboard-with-dynatrace\\\/#primaryimage\",\"url\":\"http:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2023\\\/05\\\/2023-05-08-15_02_08-Custom-log-source-configuration-Environment-Settings-.png\",\"contentUrl\":\"http:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2023\\\/05\\\/2023-05-08-15_02_08-Custom-log-source-configuration-Environment-Settings-.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wildfly-from-log-to-dashboard-with-dynatrace\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"WildFly: From Log to Dashboard with dynatrace\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/8d8563acfc6e604cce6507f45bac0ea1\",\"name\":\"Middleware Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/ddcae7ba0f9d1a0e7ae707f0e689e4a9c95bb48ec49c8e6d9cc86d43f4121cb6?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/ddcae7ba0f9d1a0e7ae707f0e689e4a9c95bb48ec49c8e6d9cc86d43f4121cb6?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/ddcae7ba0f9d1a0e7ae707f0e689e4a9c95bb48ec49c8e6d9cc86d43f4121cb6?s=96&d=mm&r=g\",\"caption\":\"Middleware Team\"},\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/author\\\/middleware-team\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"WildFly: From Log to Dashboard with dynatrace - dbi Blog","description":"How to extract attribute, convert to metrics and create a dashboard in dynatrace","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.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/","og_locale":"en_US","og_type":"article","og_title":"WildFly: From Log to Dashboard with dynatrace","og_description":"How to extract attribute, convert to metrics and create a dashboard in dynatrace","og_url":"https:\/\/www.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/","og_site_name":"dbi Blog","article_published_time":"2023-05-09T14:03:50+00:00","article_modified_time":"2024-09-11T08:18:45+00:00","og_image":[{"url":"http:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_02_08-Custom-log-source-configuration-Environment-Settings-.png","type":"","width":"","height":""}],"author":"Middleware Team","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Middleware Team","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/"},"author":{"name":"Middleware Team","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d8563acfc6e604cce6507f45bac0ea1"},"headline":"WildFly: From Log to Dashboard with dynatrace","datePublished":"2023-05-09T14:03:50+00:00","dateModified":"2024-09-11T08:18:45+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/"},"wordCount":583,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/#primaryimage"},"thumbnailUrl":"http:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_02_08-Custom-log-source-configuration-Environment-Settings-.png","keywords":["dynatrace","Monitoring","WildFly"],"articleSection":["Application integration &amp; Middleware"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/","url":"https:\/\/www.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/","name":"WildFly: From Log to Dashboard with dynatrace - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/#primaryimage"},"thumbnailUrl":"http:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_02_08-Custom-log-source-configuration-Environment-Settings-.png","datePublished":"2023-05-09T14:03:50+00:00","dateModified":"2024-09-11T08:18:45+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d8563acfc6e604cce6507f45bac0ea1"},"description":"How to extract attribute, convert to metrics and create a dashboard in dynatrace","breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/#primaryimage","url":"http:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_02_08-Custom-log-source-configuration-Environment-Settings-.png","contentUrl":"http:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2023\/05\/2023-05-08-15_02_08-Custom-log-source-configuration-Environment-Settings-.png"},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/wildfly-from-log-to-dashboard-with-dynatrace\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"WildFly: From Log to Dashboard with dynatrace"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d8563acfc6e604cce6507f45bac0ea1","name":"Middleware Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/ddcae7ba0f9d1a0e7ae707f0e689e4a9c95bb48ec49c8e6d9cc86d43f4121cb6?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/ddcae7ba0f9d1a0e7ae707f0e689e4a9c95bb48ec49c8e6d9cc86d43f4121cb6?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ddcae7ba0f9d1a0e7ae707f0e689e4a9c95bb48ec49c8e6d9cc86d43f4121cb6?s=96&d=mm&r=g","caption":"Middleware Team"},"url":"https:\/\/www.dbi-services.com\/blog\/author\/middleware-team\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/25080","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/40"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=25080"}],"version-history":[{"count":16,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/25080\/revisions"}],"predecessor-version":[{"id":25151,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/25080\/revisions\/25151"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=25080"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=25080"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=25080"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=25080"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}