{"id":340,"date":"2022-03-08T14:59:04","date_gmt":"2022-03-08T13:59:04","guid":{"rendered":"https:\/\/ptdb.ch\/?p=340"},"modified":"2022-03-08T14:59:04","modified_gmt":"2022-03-08T13:59:04","slug":"postgresql-temboard-interesting-under-the-hood-feature-for-performance-tracing","status":"publish","type":"post","link":"https:\/\/ptdb.ch\/?p=340","title":{"rendered":"PostgreSQL: temBoard &#8211; Interesting Under The Hood Feature For Performance Tracing"},"content":{"rendered":"<p>Starting with temBoard version 7.10, Dalibo implemented a quite interesting feature in regards to tracing performance related issues.<\/p>\n<p>Whenever performance related issues pops up, it was not so easy to identify what component of the temBoard UI was causing it. It could have temboardui: [monitoring], temboardui: [tools], temboardui: [statements], SQL&#8217;s running against the repository DB, scheduled jobs, or many other.<\/p>\n<p>In case you are running temBoard version 7.10 or higher, you can now enable performance tracing. To do so, you need to adjust two files. The temBoard systemd service file and the temboard.conf file.<\/p>\n<p>Add Environment=PERF=y to the systemd drop-in file:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n$ cat \/etc\/systemd\/system\/temboard.service.d\/override.conf\n&#x5B;Service]\nNice=-19\nEnvironment=PERF=y\n<\/pre>\n<p>Add the DEBUG logging level:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n$ cat \/etc\/temboard\/temboard.conf\n...\n...\n&#x5B;logging]\nlevel = DEBUG\n...\n<\/pre>\n<p>Afterwards reload the systemd daemon, and restart temBoard service.<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n$ sudo systemctl daemon-reload\n\n$ sudo systemctl stop temboard.service\n\n$ sudo systemctl start temboard.service\n\n<\/pre>\n<p>That&#8217;s it. Now you should see performance related messages in the temboard.log file.<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n...\n2022-01-27 12:35:36,257 &#x5B;2673406] &#x5B;taskmanager     ] DEBUG: Activate worker purge_data_worker\n2022-01-27 12:35:36,260 &#x5B;2673427] &#x5B;services        ]  INFO: Starting worker pool.\n2022-01-27 12:35:36,261 &#x5B;2673406] &#x5B;services        ]  INFO: Starting web.\n2022-01-27 12:35:36,262 &#x5B;2673427] &#x5B;perf            ] DEBUG: Scheduling perf counters each 15 seconds.\n2022-01-27 12:35:36,262 &#x5B;2673428] &#x5B;services        ]  INFO: Starting scheduler.\n2022-01-27 12:35:36,262 &#x5B;2673406] &#x5B;perf            ] DEBUG: Scheduling perf counters each 15 seconds.\n2022-01-27 12:35:36,263 &#x5B;2673427] &#x5B;perf            ] DEBUG: io_rchar=0 io_wchar=184 pid=2673427 service=worker-pool stime=0.0 utime=0.0 vsize=116420608\n2022-01-27 12:35:36,263 &#x5B;2673406] &#x5B;perf            ] DEBUG: io_rchar=9610041 io_wchar=108165 pid=2673406 service=web stime=0.05 utime=0.66 vsize=116420608\n2022-01-27 12:35:36,263 &#x5B;2673427] &#x5B;services        ] DEBUG: Entering worker pool loop.\n2022-01-27 12:35:36,263 &#x5B;2673428] &#x5B;perf            ] DEBUG: Scheduling perf counters each 15 seconds.\n2022-01-27 12:35:36,263 &#x5B;2673428] &#x5B;perf            ] DEBUG: io_rchar=0 io_wchar=182 pid=2673428 service=scheduler stime=0.0 utime=0.0 vsize=116420608\n2022-01-27 12:35:36,264 &#x5B;2673428] &#x5B;taskmanager     ] DEBUG: Update Task aggregate_data with options={}\n...\n<\/pre>\n<p>In case you want to learn more about this new feature, check out the following links:<\/p>\n<p><a href=\"https:\/\/temboard.readthedocs.io\/en\/v7\/howto-temboard-performances\/#enabling-performance-tracing\">https:\/\/temboard.readthedocs.io\/en\/v7\/howto-temboard-performances\/#enabling-performance-tracing<\/a><\/p>\n<p><a href=\"https:\/\/temboard.readthedocs.io\/en\/v7\/howto-temboard-performances\/#visualize-performances-traces-with-grafana\">https:\/\/temboard.readthedocs.io\/en\/v7\/howto-temboard-performances\/#visualize-performances-traces-with-grafana<\/a><\/p>\n<h3>Conclusion<\/h3>\n<p>A great feature in regards of performance tuning. It gives you so much more insites of what is happening behind the scenes. And don&#8217;t forget to disable the DEBUG mode, after you have gathered enough information.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Starting with temBoard version 7.10, Dalibo implemented a quite interesting feature in regards to tracing performance related issues. Whenever performance related issues pops up, it was not so easy to identify what component of the temBoard UI was causing it. It could have temboardui: [monitoring], temboardui: [tools], temboardui: [statements], SQL&#8217;s running against the repository DB, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ocean_post_layout":"","ocean_both_sidebars_style":"","ocean_both_sidebars_content_width":0,"ocean_both_sidebars_sidebars_width":0,"ocean_sidebar":"","ocean_second_sidebar":"","ocean_disable_margins":"enable","ocean_add_body_class":"","ocean_shortcode_before_top_bar":"","ocean_shortcode_after_top_bar":"","ocean_shortcode_before_header":"","ocean_shortcode_after_header":"","ocean_has_shortcode":"","ocean_shortcode_after_title":"","ocean_shortcode_before_footer_widgets":"","ocean_shortcode_after_footer_widgets":"","ocean_shortcode_before_footer_bottom":"","ocean_shortcode_after_footer_bottom":"","ocean_display_top_bar":"default","ocean_display_header":"default","ocean_header_style":"","ocean_center_header_left_menu":"","ocean_custom_header_template":"","ocean_custom_logo":0,"ocean_custom_retina_logo":0,"ocean_custom_logo_max_width":0,"ocean_custom_logo_tablet_max_width":0,"ocean_custom_logo_mobile_max_width":0,"ocean_custom_logo_max_height":0,"ocean_custom_logo_tablet_max_height":0,"ocean_custom_logo_mobile_max_height":0,"ocean_header_custom_menu":"","ocean_menu_typo_font_family":"","ocean_menu_typo_font_subset":"","ocean_menu_typo_font_size":0,"ocean_menu_typo_font_size_tablet":0,"ocean_menu_typo_font_size_mobile":0,"ocean_menu_typo_font_size_unit":"px","ocean_menu_typo_font_weight":"","ocean_menu_typo_font_weight_tablet":"","ocean_menu_typo_font_weight_mobile":"","ocean_menu_typo_transform":"","ocean_menu_typo_transform_tablet":"","ocean_menu_typo_transform_mobile":"","ocean_menu_typo_line_height":0,"ocean_menu_typo_line_height_tablet":0,"ocean_menu_typo_line_height_mobile":0,"ocean_menu_typo_line_height_unit":"","ocean_menu_typo_spacing":0,"ocean_menu_typo_spacing_tablet":0,"ocean_menu_typo_spacing_mobile":0,"ocean_menu_typo_spacing_unit":"","ocean_menu_link_color":"","ocean_menu_link_color_hover":"","ocean_menu_link_color_active":"","ocean_menu_link_background":"","ocean_menu_link_hover_background":"","ocean_menu_link_active_background":"","ocean_menu_social_links_bg":"","ocean_menu_social_hover_links_bg":"","ocean_menu_social_links_color":"","ocean_menu_social_hover_links_color":"","ocean_disable_title":"default","ocean_disable_heading":"default","ocean_post_title":"","ocean_post_subheading":"","ocean_post_title_style":"","ocean_post_title_background_color":"","ocean_post_title_background":0,"ocean_post_title_bg_image_position":"","ocean_post_title_bg_image_attachment":"","ocean_post_title_bg_image_repeat":"","ocean_post_title_bg_image_size":"","ocean_post_title_height":0,"ocean_post_title_bg_overlay":0.5,"ocean_post_title_bg_overlay_color":"","ocean_disable_breadcrumbs":"default","ocean_breadcrumbs_color":"","ocean_breadcrumbs_separator_color":"","ocean_breadcrumbs_links_color":"","ocean_breadcrumbs_links_hover_color":"","ocean_display_footer_widgets":"default","ocean_display_footer_bottom":"default","ocean_custom_footer_template":"","ocean_post_oembed":"","ocean_post_self_hosted_media":"","ocean_post_video_embed":"","ocean_link_format":"","ocean_link_format_target":"self","ocean_quote_format":"","ocean_quote_format_link":"post","ocean_gallery_link_images":"on","ocean_gallery_id":[],"footnotes":""},"categories":[6],"tags":[17,21,24],"class_list":["post-340","post","type-post","status-publish","format-standard","hentry","category-postgresql","tag-monitoring","tag-postgresql","tag-temboard","entry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>PostgreSQL: temBoard - Interesting Under The Hood Feature For Performance Tracing - ptdb - Platinum DB<\/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:\/\/ptdb.ch\/?p=340\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PostgreSQL: temBoard - Interesting Under The Hood Feature For Performance Tracing - ptdb - Platinum DB\" \/>\n<meta property=\"og:description\" content=\"Starting with temBoard version 7.10, Dalibo implemented a quite interesting feature in regards to tracing performance related issues. Whenever performance related issues pops up, it was not so easy to identify what component of the temBoard UI was causing it. It could have temboardui: [monitoring], temboardui: [tools], temboardui: [statements], SQL&#8217;s running against the repository DB, [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ptdb.ch\/?p=340\" \/>\n<meta property=\"og:site_name\" content=\"ptdb - Platinum DB\" \/>\n<meta property=\"article:published_time\" content=\"2022-03-08T13:59:04+00:00\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/ptdb.ch\/?p=340\",\"url\":\"https:\/\/ptdb.ch\/?p=340\",\"name\":\"PostgreSQL: temBoard - Interesting Under The Hood Feature For Performance Tracing - ptdb - Platinum DB\",\"isPartOf\":{\"@id\":\"https:\/\/ptdb.ch\/#website\"},\"datePublished\":\"2022-03-08T13:59:04+00:00\",\"author\":{\"@id\":\"https:\/\/ptdb.ch\/#\/schema\/person\/0b7baf52d23e71d85e1c95442306090b\"},\"breadcrumb\":{\"@id\":\"https:\/\/ptdb.ch\/?p=340#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/ptdb.ch\/?p=340\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/ptdb.ch\/?p=340#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/ptdb.ch\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"PostgreSQL: temBoard &#8211; Interesting Under The Hood Feature For Performance Tracing\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/ptdb.ch\/#website\",\"url\":\"https:\/\/ptdb.ch\/\",\"name\":\"ptdb - Platinum DB\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/ptdb.ch\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/ptdb.ch\/#\/schema\/person\/0b7baf52d23e71d85e1c95442306090b\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ptdb.ch\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1a3dffc48c5f6bae0b88a9f0b2a986d48d322673fbc2880c5abbfab96e45da8a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/1a3dffc48c5f6bae0b88a9f0b2a986d48d322673fbc2880c5abbfab96e45da8a?s=96&d=mm&r=g\",\"caption\":\"admin\"},\"sameAs\":[\"https:\/\/ptdb.ch\"],\"url\":\"https:\/\/ptdb.ch\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PostgreSQL: temBoard - Interesting Under The Hood Feature For Performance Tracing - ptdb - Platinum DB","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:\/\/ptdb.ch\/?p=340","og_locale":"en_US","og_type":"article","og_title":"PostgreSQL: temBoard - Interesting Under The Hood Feature For Performance Tracing - ptdb - Platinum DB","og_description":"Starting with temBoard version 7.10, Dalibo implemented a quite interesting feature in regards to tracing performance related issues. Whenever performance related issues pops up, it was not so easy to identify what component of the temBoard UI was causing it. It could have temboardui: [monitoring], temboardui: [tools], temboardui: [statements], SQL&#8217;s running against the repository DB, [&hellip;]","og_url":"https:\/\/ptdb.ch\/?p=340","og_site_name":"ptdb - Platinum DB","article_published_time":"2022-03-08T13:59:04+00:00","author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"admin","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/ptdb.ch\/?p=340","url":"https:\/\/ptdb.ch\/?p=340","name":"PostgreSQL: temBoard - Interesting Under The Hood Feature For Performance Tracing - ptdb - Platinum DB","isPartOf":{"@id":"https:\/\/ptdb.ch\/#website"},"datePublished":"2022-03-08T13:59:04+00:00","author":{"@id":"https:\/\/ptdb.ch\/#\/schema\/person\/0b7baf52d23e71d85e1c95442306090b"},"breadcrumb":{"@id":"https:\/\/ptdb.ch\/?p=340#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ptdb.ch\/?p=340"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/ptdb.ch\/?p=340#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/ptdb.ch\/"},{"@type":"ListItem","position":2,"name":"PostgreSQL: temBoard &#8211; Interesting Under The Hood Feature For Performance Tracing"}]},{"@type":"WebSite","@id":"https:\/\/ptdb.ch\/#website","url":"https:\/\/ptdb.ch\/","name":"ptdb - Platinum DB","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/ptdb.ch\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/ptdb.ch\/#\/schema\/person\/0b7baf52d23e71d85e1c95442306090b","name":"admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ptdb.ch\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/1a3dffc48c5f6bae0b88a9f0b2a986d48d322673fbc2880c5abbfab96e45da8a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1a3dffc48c5f6bae0b88a9f0b2a986d48d322673fbc2880c5abbfab96e45da8a?s=96&d=mm&r=g","caption":"admin"},"sameAs":["https:\/\/ptdb.ch"],"url":"https:\/\/ptdb.ch\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/ptdb.ch\/index.php?rest_route=\/wp\/v2\/posts\/340","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ptdb.ch\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ptdb.ch\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ptdb.ch\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ptdb.ch\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=340"}],"version-history":[{"count":0,"href":"https:\/\/ptdb.ch\/index.php?rest_route=\/wp\/v2\/posts\/340\/revisions"}],"wp:attachment":[{"href":"https:\/\/ptdb.ch\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=340"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ptdb.ch\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=340"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ptdb.ch\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=340"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}