<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: custom extension for slow queries in Extensions</title>
    <link>https://community.dynatrace.com/t5/Extensions/Custom-extension-for-slow-queries/m-p/245885#M4431</link>
    <description>&lt;P&gt;Queries should end in 10s by default. Otherwise, the query is killed.&lt;BR /&gt;If you check the Oracle extension, in the vars section you have this&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="php"&gt;vars:
id: long-running-query-timeout
displayName: Heavy query timeout
description: "Default is 10 seconds. Requires ActiveGate 1.275 or newer."
type: text&lt;/LI-CODE&gt;&lt;P&gt;&lt;BR /&gt;In the needed queries, the timeout parameter is also added.&lt;/P&gt;&lt;LI-CODE lang="php"&gt;- subgroup: topN Queries
        interval:
          minutes: 5
        featureSet: TopN
        ingest: log
        query: &amp;gt;
          SELECT sqlarea.sql_id,
                sqlarea.elapsed_time,
                sqlarea.cpu_time,
                sqlarea.sql_fulltext,
                sqlarea.parsing_schema_name,
                sqlarea.disk_reads,
                sqlarea.direct_writes,
                sqlarea.executions,
                sqlarea.parse_calls,
                sqlarea.buffer_gets,
                sqlarea.rows_processed,
                sqlarea.user_io_wait_time,
                sqlarea.cluster_wait_time,
                sqlarea.concurrency_wait_time,
                sqlarea.application_wait_time,
                sys_context('USERENV', 'INSTANCE_NAME') as INSTANCE_NAME
          FROM v$sqlarea sqlarea
                  JOIN (SELECT sql_id, current_con_id
                        FROM (SELECT area.sql_id, current_con_id
                              FROM v$sqlarea area
                                        JOIN (SELECT SYS_CONTEXT('USERENV', 'CON_ID') as current_con_id from DUAL)
                                            ON area.con_id = current_con_id
                              WHERE (area.last_active_time &amp;gt;= (SYSDATE - NUMTODSINTERVAL(300, 'SECOND'))
                                  OR (area.last_active_time IS NULL
                                      AND area.last_load_time &amp;gt;= (SYSDATE - NUMTODSINTERVAL(300, 'SECOND'))))
                              ORDER BY elapsed_time DESC)
                        WHERE rownum &amp;lt;= 100) sqlarea_int
                        ON sqlarea.sql_id = sqlarea_int.sql_id AND sqlarea.con_id = current_con_id
        timeout: var:long-running-query-timeout&lt;/LI-CODE&gt;&lt;P&gt;&lt;BR /&gt;By setting the query duration parameter, you can control the maximum duration of the query execution. For example, if you set it to 30seconds, the query is killed after that time. The code snippets are from the Oracle extension, which demonstrates how this functionality is implemented there.&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.dynatrace.com/hub/detail/oracle-database/?query=oracle&amp;amp;filter=all#release-notes" target="_blank"&gt;https://www.dynatrace.com/hub/detail/oracle-database/?query=oracle&amp;amp;filter=all#release-notes&lt;/A&gt;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 17 May 2024 06:50:34 GMT</pubDate>
    <dc:creator>PacoPorro</dc:creator>
    <dc:date>2024-05-17T06:50:34Z</dc:date>
    <item>
      <title>Custom extension for slow queries</title>
      <link>https://community.dynatrace.com/t5/Extensions/Custom-extension-for-slow-queries/m-p/245874#M4428</link>
      <description>&lt;P&gt;Hi all,&lt;/P&gt;
&lt;P&gt;I am trying to build an extension to monitor top 20 slow queries with time taken to execute&lt;/P&gt;
&lt;P&gt;Following is my YAML file. in this I am unable to fetch top queries, only I can get response time. Can someone please help me out where I am wrong.&lt;/P&gt;
&lt;DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;metrics&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; - &lt;/SPAN&gt;&lt;SPAN&gt;key&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;oracle.queries.extension.oracle-top-queries&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;metadata&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;displayName&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;Top queries&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;unit&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;Unspecified&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;BR /&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; - &lt;/SPAN&gt;&lt;SPAN&gt;key&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;oracle.queries.extension.oracle-top-queries-response&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;metadata&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;displayName&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;Response times&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;unit&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;MicroSecond&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;BR /&gt;
&lt;DIV&gt;&lt;SPAN&gt;sqlOracle&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; - &lt;/SPAN&gt;&lt;SPAN&gt;group&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;Top queries&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;featureSet&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;"Top queries"&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;interval&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;minutes&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;1&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;ingest&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;metrics&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;query&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;&amp;gt;&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; SELECT &lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; * &lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; FROM &lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; (SELECT sql_text AS "Queries", elapsed_time/1000000 AS "Response" FROM sys.v_$sqlarea ORDER BY 2 DESC) &lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; WHERE ROWNUM &amp;lt; 21&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;metrics&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; - &lt;/SPAN&gt;&lt;SPAN&gt;key&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;oracle.queries.extension.oracle-top-queries&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;value&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;col:Queries&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; - &lt;/SPAN&gt;&lt;SPAN&gt;key&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;oracle.queries.extension.oracle-top-queries-response&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;value&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;col:Response&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/DIV&gt;</description>
      <pubDate>Mon, 12 Aug 2024 06:21:28 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Extensions/Custom-extension-for-slow-queries/m-p/245874#M4428</guid>
      <dc:creator>nikhil</dc:creator>
      <dc:date>2024-08-12T06:21:28Z</dc:date>
    </item>
    <item>
      <title>Re: custom extension for slow queries</title>
      <link>https://community.dynatrace.com/t5/Extensions/Custom-extension-for-slow-queries/m-p/245885#M4431</link>
      <description>&lt;P&gt;Queries should end in 10s by default. Otherwise, the query is killed.&lt;BR /&gt;If you check the Oracle extension, in the vars section you have this&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="php"&gt;vars:
id: long-running-query-timeout
displayName: Heavy query timeout
description: "Default is 10 seconds. Requires ActiveGate 1.275 or newer."
type: text&lt;/LI-CODE&gt;&lt;P&gt;&lt;BR /&gt;In the needed queries, the timeout parameter is also added.&lt;/P&gt;&lt;LI-CODE lang="php"&gt;- subgroup: topN Queries
        interval:
          minutes: 5
        featureSet: TopN
        ingest: log
        query: &amp;gt;
          SELECT sqlarea.sql_id,
                sqlarea.elapsed_time,
                sqlarea.cpu_time,
                sqlarea.sql_fulltext,
                sqlarea.parsing_schema_name,
                sqlarea.disk_reads,
                sqlarea.direct_writes,
                sqlarea.executions,
                sqlarea.parse_calls,
                sqlarea.buffer_gets,
                sqlarea.rows_processed,
                sqlarea.user_io_wait_time,
                sqlarea.cluster_wait_time,
                sqlarea.concurrency_wait_time,
                sqlarea.application_wait_time,
                sys_context('USERENV', 'INSTANCE_NAME') as INSTANCE_NAME
          FROM v$sqlarea sqlarea
                  JOIN (SELECT sql_id, current_con_id
                        FROM (SELECT area.sql_id, current_con_id
                              FROM v$sqlarea area
                                        JOIN (SELECT SYS_CONTEXT('USERENV', 'CON_ID') as current_con_id from DUAL)
                                            ON area.con_id = current_con_id
                              WHERE (area.last_active_time &amp;gt;= (SYSDATE - NUMTODSINTERVAL(300, 'SECOND'))
                                  OR (area.last_active_time IS NULL
                                      AND area.last_load_time &amp;gt;= (SYSDATE - NUMTODSINTERVAL(300, 'SECOND'))))
                              ORDER BY elapsed_time DESC)
                        WHERE rownum &amp;lt;= 100) sqlarea_int
                        ON sqlarea.sql_id = sqlarea_int.sql_id AND sqlarea.con_id = current_con_id
        timeout: var:long-running-query-timeout&lt;/LI-CODE&gt;&lt;P&gt;&lt;BR /&gt;By setting the query duration parameter, you can control the maximum duration of the query execution. For example, if you set it to 30seconds, the query is killed after that time. The code snippets are from the Oracle extension, which demonstrates how this functionality is implemented there.&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.dynatrace.com/hub/detail/oracle-database/?query=oracle&amp;amp;filter=all#release-notes" target="_blank"&gt;https://www.dynatrace.com/hub/detail/oracle-database/?query=oracle&amp;amp;filter=all#release-notes&lt;/A&gt;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 17 May 2024 06:50:34 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Extensions/Custom-extension-for-slow-queries/m-p/245885#M4431</guid>
      <dc:creator>PacoPorro</dc:creator>
      <dc:date>2024-05-17T06:50:34Z</dc:date>
    </item>
    <item>
      <title>Re: Custom extension for slow queries</title>
      <link>https://community.dynatrace.com/t5/Extensions/Custom-extension-for-slow-queries/m-p/260347#M5418</link>
      <description>&lt;P&gt;Hi - I'm following this -&amp;nbsp;&lt;BR /&gt;```&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;vars&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;id&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;long-running-query-timeout&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;displayName&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;Heavy query timeout&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;description&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;"Default is 10 seconds. Requires ActiveGate 1.275 or newer."&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;type&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;text&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;```&lt;BR /&gt;&lt;BR /&gt;and when referencing it :&lt;BR /&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;SPAN&gt;group&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;some group&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;featureSet&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;Latest&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;interval&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;minutes&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;30&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;ingest&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;metrics&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;query&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;|&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;SOME QUERY&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;timeout&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;var:long-running-query-timeout&lt;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;I receive the below warns and error messages:&lt;BR /&gt;1:&amp;nbsp;A variable is referenced but is not defined.&lt;BR /&gt;2:&amp;nbsp;This variable is defined but is not used within this extension&lt;BR /&gt;&lt;BR /&gt;Could you please share a working example?&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Wed, 23 Oct 2024 15:09:30 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Extensions/Custom-extension-for-slow-queries/m-p/260347#M5418</guid>
      <dc:creator>dprint</dc:creator>
      <dc:date>2024-10-23T15:09:30Z</dc:date>
    </item>
  </channel>
</rss>

