<?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: Agentic AI cost limits and per-user consumption monitoring in AI</title>
    <link>https://community.dynatrace.com/t5/AI/Agentic-AI-cost-limits-and-per-user-consumption-monitoring/m-p/303070#M222</link>
    <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;OL&gt;&lt;LI&gt;&lt;SPAN&gt;Are there audit records, APIs, billing exports, Account Management reports, or DQL-accessible data that show:&lt;/SPAN&gt;&lt;UL&gt;&lt;LI&gt;&lt;SPAN&gt;the user who initiated the execution,&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;the operation that was executed,&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;the Dynatrace capability that was consumed,&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;and the resulting DPS consumption or cost?&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;Can a Budget Alert or Cost Monitor notification be connected to a Workflow that automatically removes the ai:operator:execute&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;permission from a user or group? If technically possible, would this be considered a supported or recommended approach?&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN&gt;For the question, &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;“Are there audit records, APIs, billing exports, Account Management reports, or DQL-accessible data that show:”&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;, please see the attached 'DQL Usage Overview' Dashboard.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN&gt;I didn’t create this dashboard from scratch myself—I found it in the Dynatrace Community some time ago. Unfortunately, I can’t remember the original post, but I’ve found the dashboard to be extremely useful.&lt;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN&gt;Regarding your question, &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;“Can a Budget Alert or Cost Monitor notification be connected to a Workflow that automatically …”&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;, there are a few possible approaches, although they require some workarounds. The biggest limitation at the moment is that &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;AI and DQL costs are not separated&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;, which makes it difficult to trigger actions based specifically on DQL usage.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;H3&gt;&lt;SPAN&gt;1. Prepare the query&lt;/SPAN&gt;&lt;/H3&gt;&lt;P class=""&gt;&lt;SPAN&gt;First, we need to prepare the query that will be used to calculate the cost. (Play around with it a bit in a notebook)&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN&gt;Replace the following variables in the query:&lt;/SPAN&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;STRONG&gt;&lt;SPAN&gt;$cost&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt; = Cost per GiB scanned&lt;/SPAN&gt;&lt;BR /&gt;&lt;EM&gt;&lt;SPAN&gt;Example: &lt;/SPAN&gt;&lt;/EM&gt;&lt;EM&gt;&lt;SPAN&gt;$0.0035&lt;/SPAN&gt;&lt;/EM&gt;&lt;EM&gt;&lt;SPAN&gt; per GiB scanned&lt;/SPAN&gt;&lt;/EM&gt;&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;&lt;SPAN&gt;$costAlert&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt; = The cost threshold at which you want to block users&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;fetch dt.system.events, from: now()@M, to:now()&lt;BR /&gt;| filter event.kind == "BILLING_USAGE_EVENT" and matchesPhrase(event.type, "Query")&lt;BR /&gt;AND isNotNull(user.email)&lt;BR /&gt;| fields query_start, event.type, query_id, user.email, billed_bytes&lt;BR /&gt;| fieldsAdd query_cost = billed_bytes/1024/1024/1024*toDouble(&lt;STRONG&gt;$cost&lt;/STRONG&gt;)&lt;BR /&gt;| summarize cost = round((sum(query_cost)), decimals:toLong(2)), count = count(), by:{user.email,event.type}&lt;BR /&gt;| summarize records = collectArray(record(cost, count, type=event.type)), total = sum(cost), by:{user.email}&lt;BR /&gt;| fieldsAdd totalCost =round(total, decimals:toLong(2)),&lt;BR /&gt;costAlert = if(total &amp;gt;= toLong(&lt;STRONG&gt;$costAlert&lt;/STRONG&gt;),1,else:0)&lt;BR /&gt;| sort totalCost desc&lt;BR /&gt;| filter costAlert=1&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;H3&gt;&lt;SPAN&gt;2. Triggering the workflow&lt;/SPAN&gt;&lt;/H3&gt;&lt;P&gt;&lt;SPAN&gt;We can then use this query in one of two ways:&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;STRONG&gt;&lt;SPAN&gt;Timed Workflow trigger:&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Alternatively, we can create a Workflow with a scheduled/timed trigger that periodically runs the query and checks whether the threshold has been exceeded. I’ve included an example of this approach in the attachment.&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;&lt;SPAN&gt;Anomaly Detection app — recommended:&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Use the query to create an event when the defined threshold is reached. This event can then be picked up by a Workflow trigger. This approach is recommended, although it requires a little more setup.&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;SPAN&gt;&lt;BR /&gt;Note: You can expand on this to automatically renew permissions on end of month or do anything else.&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;You’ll need to create a group with the required DQL and/or AI permissions. This will be the group that the workflow manages by automatically removing users from it when the defined threshold is reached.&lt;/P&gt;&lt;P&gt;Make sure that no other groups have these permissions, unless you specifically want to exclude those users from having their permissions removed. Users in those groups will still receive the warning email, but they won’t lose access.&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
    <pubDate>Tue, 11 Aug 2026 08:37:16 GMT</pubDate>
    <dc:creator>dylan_taelemans</dc:creator>
    <dc:date>2026-08-11T08:37:16Z</dc:date>
    <item>
      <title>Agentic AI cost limits and per-user consumption monitoring</title>
      <link>https://community.dynatrace.com/t5/AI/Agentic-AI-cost-limits-and-per-user-consumption-monitoring/m-p/302930#M217</link>
      <description>&lt;P class=""&gt;&lt;SPAN&gt;Hello Dynatrace Community,&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN&gt;We are currently evaluating the governance and cost-control options available for Agentic AI under a Dynatrace Platform Subscription.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN&gt;Dynatrace Support informed us that it is currently not possible to configure a hard consumption or cost limit that automatically stops or restricts Agentic AI executions once a predefined threshold has been reached.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN&gt;Our understanding is that:&lt;/SPAN&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;SPAN&gt;Budget Alerts and Cost Monitors provide notifications only.&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;Exceeding a configured budget does not stop Agentic AI usage.&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;Hard limits cannot currently be applied at account, environment, user-group, or individual-user level.&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;Access can be restricted through the&amp;nbsp;ai:operator:execute&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;IAM permission, but this controls whether a user can access Agentic AI and does not impose a usage or cost quota.&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P class=""&gt;&lt;SPAN&gt;Our customer operates with a predefined annual Dynatrace budget and needs to prevent Agentic AI consumption from causing the annual DPS commitment to be exceeded.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN&gt;We would therefore appreciate feedback from other customers and Dynatrace experts on the following:&lt;/SPAN&gt;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;&lt;SPAN&gt;Has anyone implemented a practical workaround to stop or restrict Agentic AI usage when a specific consumption threshold is reached?&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;Is there currently a way to identify the Agentic AI consumption generated by each individual user or user group?&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;Can Agentic AI executions be distinguished from manual actions performed through Notebooks, Dashboards, DQL, or other Dynatrace applications?&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;Are there audit records, APIs, billing exports, Account Management reports, or DQL-accessible data that show:&lt;/SPAN&gt;&lt;UL&gt;&lt;LI&gt;&lt;SPAN&gt;the user who initiated the execution,&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;the operation that was executed,&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;the Dynatrace capability that was consumed,&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;and the resulting DPS consumption or cost?&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;Can a Budget Alert or Cost Monitor notification be connected to a Workflow that automatically removes the ai:operator:execute&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;permission from a user or group? If technically possible, would this be considered a supported or recommended approach?&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;How are other enterprise customers governing Agentic AI access and consumption to avoid unexpected on-demand charges?&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P class=""&gt;&lt;SPAN&gt;We are particularly interested in real-world implementations, dashboards, APIs, automation approaches, or governance practices currently being used.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Thank you in advance&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 06 Aug 2026 13:06:50 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/AI/Agentic-AI-cost-limits-and-per-user-consumption-monitoring/m-p/302930#M217</guid>
      <dc:creator>ChrysanthosK</dc:creator>
      <dc:date>2026-08-06T13:06:50Z</dc:date>
    </item>
    <item>
      <title>Re: Agentic AI cost limits and per-user consumption monitoring</title>
      <link>https://community.dynatrace.com/t5/AI/Agentic-AI-cost-limits-and-per-user-consumption-monitoring/m-p/303053#M221</link>
      <description>&lt;P&gt;&lt;a href="https://community.dynatrace.com/t5/user/viewprofilepage/user-id/106077"&gt;@ChrysanthosK&lt;/a&gt;&amp;nbsp;If you haven't already explored this, you can start by looking at the "Dynatrace Intelligence Feature Adoption" ready made dashboard which should already be available in your tenant . This can provide you some insights on the usage&lt;/P&gt;&lt;P&gt;&lt;A href="https://docs.dynatrace.com/docs/shortlink/agentic-and-generative-ai-faq#copilot-monitor-adoption" target="_blank"&gt;https://docs.dynatrace.com/docs/shortlink/agentic-and-generative-ai-faq#copilot-monitor-adoption&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 11 Aug 2026 06:21:26 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/AI/Agentic-AI-cost-limits-and-per-user-consumption-monitoring/m-p/303053#M221</guid>
      <dc:creator>p_devulapalli</dc:creator>
      <dc:date>2026-08-11T06:21:26Z</dc:date>
    </item>
    <item>
      <title>Re: Agentic AI cost limits and per-user consumption monitoring</title>
      <link>https://community.dynatrace.com/t5/AI/Agentic-AI-cost-limits-and-per-user-consumption-monitoring/m-p/303070#M222</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;OL&gt;&lt;LI&gt;&lt;SPAN&gt;Are there audit records, APIs, billing exports, Account Management reports, or DQL-accessible data that show:&lt;/SPAN&gt;&lt;UL&gt;&lt;LI&gt;&lt;SPAN&gt;the user who initiated the execution,&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;the operation that was executed,&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;the Dynatrace capability that was consumed,&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;and the resulting DPS consumption or cost?&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;Can a Budget Alert or Cost Monitor notification be connected to a Workflow that automatically removes the ai:operator:execute&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;permission from a user or group? If technically possible, would this be considered a supported or recommended approach?&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN&gt;For the question, &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;“Are there audit records, APIs, billing exports, Account Management reports, or DQL-accessible data that show:”&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;, please see the attached 'DQL Usage Overview' Dashboard.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN&gt;I didn’t create this dashboard from scratch myself—I found it in the Dynatrace Community some time ago. Unfortunately, I can’t remember the original post, but I’ve found the dashboard to be extremely useful.&lt;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN&gt;Regarding your question, &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;“Can a Budget Alert or Cost Monitor notification be connected to a Workflow that automatically …”&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;, there are a few possible approaches, although they require some workarounds. The biggest limitation at the moment is that &lt;/SPAN&gt;&lt;STRONG&gt;&lt;SPAN&gt;AI and DQL costs are not separated&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;, which makes it difficult to trigger actions based specifically on DQL usage.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;H3&gt;&lt;SPAN&gt;1. Prepare the query&lt;/SPAN&gt;&lt;/H3&gt;&lt;P class=""&gt;&lt;SPAN&gt;First, we need to prepare the query that will be used to calculate the cost. (Play around with it a bit in a notebook)&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN&gt;Replace the following variables in the query:&lt;/SPAN&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;STRONG&gt;&lt;SPAN&gt;$cost&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt; = Cost per GiB scanned&lt;/SPAN&gt;&lt;BR /&gt;&lt;EM&gt;&lt;SPAN&gt;Example: &lt;/SPAN&gt;&lt;/EM&gt;&lt;EM&gt;&lt;SPAN&gt;$0.0035&lt;/SPAN&gt;&lt;/EM&gt;&lt;EM&gt;&lt;SPAN&gt; per GiB scanned&lt;/SPAN&gt;&lt;/EM&gt;&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;&lt;SPAN&gt;$costAlert&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt; = The cost threshold at which you want to block users&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;fetch dt.system.events, from: now()@M, to:now()&lt;BR /&gt;| filter event.kind == "BILLING_USAGE_EVENT" and matchesPhrase(event.type, "Query")&lt;BR /&gt;AND isNotNull(user.email)&lt;BR /&gt;| fields query_start, event.type, query_id, user.email, billed_bytes&lt;BR /&gt;| fieldsAdd query_cost = billed_bytes/1024/1024/1024*toDouble(&lt;STRONG&gt;$cost&lt;/STRONG&gt;)&lt;BR /&gt;| summarize cost = round((sum(query_cost)), decimals:toLong(2)), count = count(), by:{user.email,event.type}&lt;BR /&gt;| summarize records = collectArray(record(cost, count, type=event.type)), total = sum(cost), by:{user.email}&lt;BR /&gt;| fieldsAdd totalCost =round(total, decimals:toLong(2)),&lt;BR /&gt;costAlert = if(total &amp;gt;= toLong(&lt;STRONG&gt;$costAlert&lt;/STRONG&gt;),1,else:0)&lt;BR /&gt;| sort totalCost desc&lt;BR /&gt;| filter costAlert=1&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;H3&gt;&lt;SPAN&gt;2. Triggering the workflow&lt;/SPAN&gt;&lt;/H3&gt;&lt;P&gt;&lt;SPAN&gt;We can then use this query in one of two ways:&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;STRONG&gt;&lt;SPAN&gt;Timed Workflow trigger:&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Alternatively, we can create a Workflow with a scheduled/timed trigger that periodically runs the query and checks whether the threshold has been exceeded. I’ve included an example of this approach in the attachment.&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;&lt;SPAN&gt;Anomaly Detection app — recommended:&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Use the query to create an event when the defined threshold is reached. This event can then be picked up by a Workflow trigger. This approach is recommended, although it requires a little more setup.&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;SPAN&gt;&lt;BR /&gt;Note: You can expand on this to automatically renew permissions on end of month or do anything else.&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;You’ll need to create a group with the required DQL and/or AI permissions. This will be the group that the workflow manages by automatically removing users from it when the defined threshold is reached.&lt;/P&gt;&lt;P&gt;Make sure that no other groups have these permissions, unless you specifically want to exclude those users from having their permissions removed. Users in those groups will still receive the warning email, but they won’t lose access.&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 11 Aug 2026 08:37:16 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/AI/Agentic-AI-cost-limits-and-per-user-consumption-monitoring/m-p/303070#M222</guid>
      <dc:creator>dylan_taelemans</dc:creator>
      <dc:date>2026-08-11T08:37:16Z</dc:date>
    </item>
    <item>
      <title>Re: Agentic AI cost limits and per-user consumption monitoring</title>
      <link>https://community.dynatrace.com/t5/AI/Agentic-AI-cost-limits-and-per-user-consumption-monitoring/m-p/303072#M223</link>
      <description>&lt;P&gt;My JSON file for the dashboard wouldn’t upload—it just kept loading without showing any error. So I’m trying it this way instead.&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;{"version":21,"variables":[{"version":2,"key":"cost","type":"text","visible":false,"editable":true,"defaultValue":"0.00234619141"},{"version":2,"key":"version","type":"csv","visible":false,"input":"2.0.0","multiple":false},{"version":2,"key":"costAlert","type":"text","visible":true,"editable":true,"defaultValue":"100"},{"version":2,"key":"decimalPlace","type":"csv","visible":true,"editable":true,"input":"0,1,2,3,4,5","multiple":false,"defaultValue":"5"},{"version":2,"key":"costAvgExecutionAlert","type":"text","visible":true,"editable":true,"defaultValue":"5"},{"version":2,"key":"limit","type":"text","visible":true,"editable":true,"defaultValue":"100"},{"version":2,"key":"DataType","type":"query","visible":true,"editable":true,"input":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\n| fields event.type\n| dedup  event.type","multiple":true,"defaultValue":["3420b2ac-f1cf-4b24-b62d-61ba1ba8ed05*"]},{"version":2,"key":"user","type":"query","visible":true,"editable":true,"input":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\n| fields user.email\n| dedup user.email","multiple":true,"defaultValue":["3420b2ac-f1cf-4b24-b62d-61ba1ba8ed05*"]},{"version":2,"key":"tenant","type":"query","visible":false,"editable":true,"input":"fetch dt.system.events \n| fields dt.system.environment \n| limit 1\n","multiple":false}],"tiles":{"34":{"title":"Query Cost Per Day","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes, timestamp\n| fieldsAdd query_cost = billed_bytes/1024/1024/1024*toDouble($cost)\n| makeTimeseries query_cost_sum = sum(query_cost), bins:1\n| fieldsAdd temp = if(isNull(query_cost_sum[]), toDouble(0), else:query_cost_sum[])\n| fieldsAdd `Cost` = arrayCumulativeSum(temp)\n| fieldsRemove temp","visualization":"barChart","visualizationSettings":{"dataMapping":{"displayedFields":["query_cost_sum","Cost"]},"chartSettings":{"truncationMode":"middle","legend":{"hidden":true},"xAxisLabel":"timeframe","xAxisScaling":"analyzedTimeframe","valueRepresentation":"relative","seriesOverrides":[{"seriesId":["Cost"],"override":{"geometry":"line"}}],"fieldMapping":{"leftAxisValues":["query_cost_sum","Cost"],"timestamp":"timeframe"}},"unitsOverrides":[{"identifier":"query_cost_sum","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759851623134},{"identifier":"Cost","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759851728698}]},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"davisVisualization":{"isAvailable":true}}},"36":{"title":"DQL Cost by Data Type Daily","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes, timestamp\n| makeTimeseries query_cost_sum = sum(billed_bytes/1024/1024/1024*toDouble($cost)), by:{event.type}, bins:1\n| fieldsAdd temp = if(isNull(query_cost_sum[]), toDouble(0), else:query_cost_sum[])\n| fieldsAdd `Cost` = arrayCumulativeSum(temp)\n| fieldsRemove temp","visualization":"lineChart","visualizationSettings":{"chartSettings":{"truncationMode":"middle","legend":{"hidden":true},"xAxisLabel":"timeframe","xAxisScaling":"analyzedTimeframe","valueRepresentation":"relative","seriesOverrides":[{"seriesId":["Events - Query","query_cost_sum"],"override":{"geometry":"bar"}},{"seriesId":["Log Management &amp;amp; Analytics - Query","query_cost_sum"],"override":{"geometry":"bar"}},{"seriesId":["Traces - Query","query_cost_sum"],"override":{"geometry":"bar"}},{"seriesId":["Events - Query","Cost"],"override":{"geometry":"line"}},{"seriesId":["Log Management &amp;amp; Analytics - Query","Cost"],"override":{"geometry":"line"}},{"seriesId":["Traces - Query","Cost"],"override":{"geometry":"line"}}],"fieldMapping":{"leftAxisValues":["query_cost_sum","Cost"],"timestamp":"timeframe"},"gapPolicy":"connect"},"dataMapping":{"displayedFields":["event.type","query_cost_sum","Cost"]},"autoSelectVisualization":false,"unitsOverrides":[{"identifier":"query_cost_sum","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759851743891},{"identifier":"Cost","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759851762216}]},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"davisVisualization":{"isAvailable":true}},"timeframe":{"tileTimeframe":{"from":"now()-7d","to":"now()"},"tileTimeframeEnabled":false}},"37":{"title":"DQL Cost by Data Type","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes\n| summarize bytes = sum(billed_bytes), by:{event.type}\n| summarize array = collectArray(record(`event.type`,bytes)),totalBytes=sum(bytes)\n| expand array\n| fieldsAdd query_totalCost = totalBytes/1024/1024/1024*toDouble($cost), query_cost = array[bytes]/1024/1024/1024*toDouble($cost)\n| fields array[event.type], alias:`Data Type`, round(query_cost, decimals:toLong($decimalPlace)), alias:`Cost`, percentage = (toDouble(query_cost/query_totalCost) * 100)\n| sort percentage desc\n","visualization":"pieChart","visualizationSettings":{"chartSettings":{"truncationMode":"middle","legend":{"hidden":true},"categoricalBarChartSettings":{"valueAxis":"Cost","valueAxisLabel":"Cost","categoryAxis":["Cost","Data Type"],"categoryAxisLabel":"Cost,Data Type"},"circleChartSettings":{"valueType":"relative"}},"autoSelectVisualization":false,"unitsOverrides":[{"identifier":"Cost","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759851648864}]},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"davisVisualization":{"isAvailable":true}},"timeframe":{"tileTimeframe":{"from":"now()-7d","to":"now()"},"tileTimeframeEnabled":false}},"39":{"title":"Last Month","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes, timestamp\n| makeTimeseries monthly=sum(billed_bytes/1024/1024/1024), interval:31d\n| fieldsAdd lastmonth = arrayLast(monthly)","visualization":"singleValue","visualizationSettings":{"singleValue":{"labelMode":"none","label":"lastmonth","recordField":"lastmonth","prefixIcon":"","sparklineSettings":{"record":"monthly"},"trend":{"isVisible":true}},"unitsOverrides":[{"identifier":"lastmonth","unitCategory":"data","baseUnit":"gibibyte","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1718620268306}]},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"enabled":false,"davisVisualization":{"isAvailable":true}},"timeframe":{"tileTimeframeEnabled":true,"tileTimeframe":{"from":"now()-30d","to":"now()"}}},"40":{"title":"Last 7d","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes, timestamp\n| makeTimeseries weekly=sum(billed_bytes/1024/1024/1024), interval:7d\n| fieldsAdd lastweek = arrayLast(weekly)","visualization":"singleValue","visualizationSettings":{"singleValue":{"labelMode":"none","label":"lastweek","recordField":"lastweek","prefixIcon":"","sparklineSettings":{"record":"weekly"},"trend":{"isVisible":true}},"unitsOverrides":[{"identifier":"lastweek","unitCategory":"data","baseUnit":"gibibyte","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1718620268306}]},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"enabled":false,"davisVisualization":{"isAvailable":true}},"timeframe":{"tileTimeframeEnabled":true,"tileTimeframe":{"from":"now()-30d","to":"now()"}}},"42":{"title":"Last Month","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes, timestamp\n| fieldsAdd query_cost = billed_bytes/1024/1024/1024*toDouble($cost)\n| makeTimeseries monthly=sum(query_cost), interval:31d\n| fieldsAdd lastmonth = round(arrayLast(monthly), decimals:toLong($decimalPlace))","visualization":"singleValue","visualizationSettings":{"singleValue":{"labelMode":"none","label":"lastmonth","recordField":"lastmonth","prefixIcon":"","sparklineSettings":{"record":"monthly"},"trend":{"isVisible":true}},"unitsOverrides":[{"identifier":"yesterday","unitCategory":"data","baseUnit":"byte","displayUnit":null,"decimals":1,"suffix":"","delimiter":true,"cascade":null,"added":1718620268306},{"identifier":"monthly","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759851711067},{"identifier":"lastmonth","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759851711442}]},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"enabled":false,"davisVisualization":{"isAvailable":true}},"timeframe":{"tileTimeframeEnabled":true,"tileTimeframe":{"from":"now()-30d","to":"now()"}}},"43":{"title":"Last 7d","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes, timestamp\n| fieldsAdd query_cost = billed_bytes/1024/1024/1024*toDouble($cost)\n| makeTimeseries weekly=sum(query_cost), interval:7d\n| fieldsAdd lastweek = round(arrayLast(weekly), decimals:toLong($decimalPlace))","visualization":"singleValue","visualizationSettings":{"singleValue":{"labelMode":"none","label":"lastweek","recordField":"lastweek","prefixIcon":"","sparklineSettings":{"record":"weekly"},"trend":{"isVisible":true}},"unitsOverrides":[{"identifier":"yesterday","unitCategory":"data","baseUnit":"byte","displayUnit":null,"decimals":1,"suffix":"","delimiter":true,"cascade":null,"added":1718620268306},{"identifier":"weekly","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759851692166},{"identifier":"lastweek","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759851692350}]},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"enabled":false,"davisVisualization":{"isAvailable":true}},"timeframe":{"tileTimeframeEnabled":true,"tileTimeframe":{"from":"now()-30d","to":"now()"}}},"44":{"title":"Last 24h","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes, timestamp\n| fieldsAdd query_cost = billed_bytes/1024/1024/1024*toDouble($cost)\n| makeTimeseries daily=sum(query_cost), interval:1d\n| fieldsAdd yesterday = round(arrayLast(daily), decimals:toLong($decimalPlace))","visualization":"singleValue","visualizationSettings":{"singleValue":{"labelMode":"none","label":"yesterday","recordField":"yesterday","prefixIcon":"","sparklineSettings":{"record":"daily"},"trend":{"isVisible":true}},"unitsOverrides":[{"identifier":"daily","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759851664622},{"identifier":"yesterday","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759851665033}]},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"enabled":false,"davisVisualization":{"isAvailable":true}},"timeframe":{"tileTimeframeEnabled":true,"tileTimeframe":{"from":"now()-30d","to":"now()"}}},"46":{"title":"Traces - Cost by User","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND matchesPhrase(event.type,\"Traces - Query\")\nAND isNotNull(user.email)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes\n| fieldsAdd query_cost = billed_bytes/1024/1024/1024*toDouble($cost)\n| summarize cost = round((sum(query_cost)), decimals:toLong($decimalPlace)), count = count(), by:{user.email,event.type}\n| sort cost desc\n// | fieldsAdd Cost = concat($currency,round(cost, decimals:toLong($decimalPlace))),costAlert = if(cost &amp;gt;= toLong($costAlert),1,else:0)\n| fields user.email, cost\n// | fields user.email, costAlert, alias:`Cost Alert`,totalCostString, alias: `Total Cost($currency)`, records[type], alias:`Type1`, records[count], alias:`Query Count1`, concat($currency,records[cost]), alias:`Cost ($currency)1`\n| limit toLong($limit)","visualization":"pieChart","visualizationSettings":{"chartSettings":{"truncationMode":"middle","legend":{"hidden":true},"categoricalBarChartSettings":{"valueAxis":["cost"],"valueAxisLabel":"cost","categoryAxis":["user.email"],"categoryAxisLabel":"user.email"},"circleChartSettings":{"valueType":"relative","groupingThresholdType":"relative"}},"autoSelectVisualization":false,"unitsOverrides":[{"identifier":"cost","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759851794496}]},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":1,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"enabled":false,"davisVisualization":{"isAvailable":true}}},"47":{"title":"Events - Cost by User","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND matchesPhrase(event.type,\"Events - Query\")\nAND isNotNull(user.email)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes\n| fieldsAdd query_cost = billed_bytes/1024/1024/1024*toDouble($cost)\n| summarize cost = round((sum(query_cost)), decimals:toLong($decimalPlace)), count = count(), by:{user.email,event.type}\n| sort cost desc\n// | fieldsAdd Cost = concat($currency,round(cost, decimals:toLong($decimalPlace))),costAlert = if(cost &amp;gt;= toLong($costAlert),1,else:0)\n| fields user.email, cost\n// | fields user.email, costAlert, alias:`Cost Alert`,totalCostString, alias: `Total Cost($currency)`, records[type], alias:`Type1`, records[count], alias:`Query Count1`, concat($currency,records[cost]), alias:`Cost ($currency)1`\n| limit toLong($limit)","visualization":"pieChart","visualizationSettings":{"chartSettings":{"truncationMode":"middle","legend":{"hidden":true},"categoricalBarChartSettings":{"valueAxis":["cost"],"valueAxisLabel":"cost","categoryAxis":["user.email"],"categoryAxisLabel":"user.email"},"circleChartSettings":{"valueType":"relative","groupingThresholdType":"relative"}},"autoSelectVisualization":false,"unitsOverrides":[{"identifier":"cost","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759851785242}]},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":1,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"enabled":false,"davisVisualization":{"isAvailable":true}}},"48":{"title":"Log Management &amp;amp; Analytics - Cost by User","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND matchesPhrase(event.type,\"Log Management &amp;amp; Analytics - Query\")\nAND isNotNull(user.email)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes\n| fieldsAdd query_cost = billed_bytes/1024/1024/1024*toDouble($cost)\n| summarize cost = round((sum(query_cost)), decimals:toLong($decimalPlace)), count = count(), by:{user.email,event.type}\n| sort cost desc\n// | fieldsAdd Cost = concat($currency,round(cost, decimals:toLong($decimalPlace))),costAlert = if(cost &amp;gt;= toLong($costAlert),1,else:0)\n| fields user.email, cost\n// | fields user.email, costAlert, alias:`Cost Alert`,totalCostString, alias: `Total Cost($currency)`, records[type], alias:`Type1`, records[count], alias:`Query Count1`, concat($currency,records[cost]), alias:`Cost ($currency)1`\n| limit toLong($limit)","visualization":"pieChart","visualizationSettings":{"chartSettings":{"truncationMode":"middle","legend":{"hidden":true},"categoricalBarChartSettings":{"valueAxis":["cost"],"valueAxisLabel":"cost","categoryAxis":["user.email"],"categoryAxisLabel":"user.email"},"circleChartSettings":{"valueType":"relative","groupingThresholdType":"relative"}},"autoSelectVisualization":false,"unitsOverrides":[{"identifier":"cost","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759851775241}]},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":1,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"enabled":false,"davisVisualization":{"isAvailable":true}}},"49":{"title":"Total Cost per User","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes\n| fieldsAdd query_cost = billed_bytes/1024/1024/1024*toDouble($cost)\n| summarize cost = round((sum(query_cost)), decimals:toLong($decimalPlace)), count = count(), by:{user.email,event.type}\n| summarize records = collectArray(record(cost, count, type=event.type)), total = sum(cost), by:{user.email}\n| fieldsAdd totalCost =round(total, decimals:toLong($decimalPlace)),\ncostAlert = if(total &amp;gt;= toLong($costAlert),1,else:0)\n| sort totalCost desc\n| fields user.email, costAlert, alias:`Cost Alert`,totalCost, alias: `Total Cost`, records[0][type], alias:`Type1`, records[0][count], alias:`Query Count1`, records[0][cost], alias:`Cost 1`,\nrecords[1][type], alias:`Type2`, records[1][count], alias:`Query Count2`, records[1][cost], alias:`Cost 2`,\nrecords[2][type], alias:`Type3`, records[2][count], alias:`Query Count3`, records[2][cost], alias:`Cost 3`\n| limit toLong($limit)","visualization":"table","visualizationSettings":{"table":{"hiddenColumns":[["Cost Alert"]],"linewrapEnabled":true,"rowDensity":"comfortable","lineWrapIds":[["user.email"],["Total Cost(\"$\")"],["Type1"],["Query Count1"],["Cost (\"$\")1"],["Type2"],["Query Count2"],["Cost (\"$\")2"],["Type3"],["Query Count3"],["Cost (\"$\")3"]],"sortBy":{"columnId":"[\"Total Cost(\\\"$\\\")\"]","direction":"descending"},"columnWidths":{"[\"Cost Alert\"]":115.59375,"[\"user.email\"]":281.5694580078125,"[\"Type1\"]":126.72,"[\"Type2\"]":175.71,"[\"Total Cost(\\\"$\\\")\"]":136.8,"[\"Query Count1\"]":116.68,"[\"Cost (\\\"$\\\")1\"]":92.97915649414062,"[\"Query Count2\"]":86.6875,"[\"Cost (\\\"$\\\")2\"]":102.97917175292969,"[\"Query Count3\"]":91.70834350585938,"[\"Total Cost\"]":143.79}},"coloring":{"colorRules":[{"value":0,"comparator":"=","field":"Cost Alert","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-status-ideal-default, #2f6863)"},"metadata":{"applyTo":"row"}},{"value":1,"comparator":"=","field":"Cost Alert","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-status-critical-default, #c4233b)"},"metadata":{"applyTo":"row"}}]},"autoSelectVisualization":false,"unitsOverrides":[{"identifier":"Total Cost(\"$\")","unitCategory":"unspecified","baseUnit":"none","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1738174772197},{"identifier":"Total Cost","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759356955882},{"identifier":"Cost 1","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759356956059},{"identifier":"Cost 2","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759356956215},{"identifier":"Cost 3","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759356956801}]},"querySettings":{"maxResultRecords":100000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"davisVisualization":{"isAvailable":true}}},"52":{"title":"Cost by App","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes, timestamp, query_string\n| fieldsAdd gb = billed_bytes/1024/1024/1024\n| fieldsAdd query_cost = gb*toDouble($cost)  \n| join [\n  fetch dt.system.query_executions\n  | filter isNotNull(user.email) \n  AND not(in(bucket, \"default_davis_events\",\"dt_system_metrics\",\"default_davis_k8s_ops_events\",\"default_davis_custom_events\",\"default_security_custom_events\",\"default_security_events\",\"default_synthetic_events\",\"default_synthetic_detailed_events\",\"default_selfmon_events\")) \n  AND isNotNull(bucket)\n  AND bucket != \"\"\n  AND status == \"SUCCEEDED\"\n  AND scanned_bytes &amp;gt; 0\n  AND (isNotNull(client.application_context)  or isNotNull(client.internal_service_context))\n  and isNotNull(query_id)\n  | parse client.source,\"LD:link ('?'|EOS)\"\n  | fieldsAdd client.source = client.source\n  // AND isNotNull(client.source)\n],\n  on: query_id,\n  prefix: \"executiondata.\",\n  kind:inner\n| fieldsAdd app = if(isNotNull(executiondata.client.application_context)\n      ,executiondata.client.application_context\n      ,else:executiondata.client.internal_service_context), function = executiondata.client.function_context, link = executiondata.link, source = executiondata.client.source\n| summarize  Cost = round((sum(query_cost)), decimals:toLong($decimalPlace)),GiB = round(sum(gb), decimals:toLong($decimalPlace)), executions=count(), by:{app, function, link, source}\n| sort Cost desc\n| fieldsAdd costAlert = if(Cost &amp;gt;= toDouble($costAlert), 1, else:0)\n| fieldsAdd url = if(app == \"dynatrace.davis.anomalydetection\", concat(\"[\",app,\"](https://{environmentid}.apps.dynatrace.com/ui/apps/dynatrace.davis.anomalydetection/intent/open_anomaly_detector_schema#%7B%22dt.settings.object_id%22%3A%22\",source,\"%22%2C%22dt.settings.schema_id%22%3A%22builtin%3Adavis.anomaly-detectors%22%7D)\"),else:concat(\"[\",app,\"]\",\"(\",link,\")\"))\n\n// | fieldsAdd url = concat(\"[\",executiondata.client.source,\"](https://{environmentid}.apps.dynatrace.com/ui/apps/dynatrace.davis.anomalydetection/intent/open_anomaly_detector_schema#%7B%22dt.settings.object_id%22%3A%22\",executiondata.client.source,\"%22%2C%22dt.settings.schema_id%22%3A%22builtin%3Adavis.anomaly-detectors%22%7D)\")\n| fields app, url, costAlert, Cost, GiB, executions\n| filter GiB &amp;gt; 0\n| limit toLong($limit)","visualization":"table","visualizationSettings":{"table":{"columnOrder":["[\"app\"]","[\"url\"]","[\"costAlert\"]","[\"Cost\"]","[\"GiB\"]","[\"executions\"]"],"columnTypeOverrides":[{"id":504448.8999999999,"fields":["url"],"value":"markdown"}],"hiddenColumns":[["costAlert"]],"columnWidths":{"[\"App\"]":350.125,"[\"Gigabyte\"]":84.8125,"[\"costAlert\"]":67.4375,"[\"url\"]":240,"[\"executiondata.client.source\"]":1393,"[\"Cost\"]":81,"[\"app\"]":221}},"coloring":{"colorRules":[{"value":0,"comparator":"=","field":"costAlert","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-status-ideal-default, #2f6863)"},"metadata":{"applyTo":"row"}},{"value":1,"comparator":"=","field":"costAlert","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-status-critical-default, #c4233b)"},"metadata":{"applyTo":"row"}}]},"autoSelectVisualization":false,"unitsOverrides":[{"identifier":"GiB","unitCategory":"data","baseUnit":"gibibyte","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1738174508912},{"identifier":"Cost","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759356576504}]},"querySettings":{"maxResultRecords":100000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"davisVisualization":{"isAvailable":true}}},"53":{"title":"Cost by Dashboard/Notebook","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes, timestamp, query_string\n| fieldsAdd gb = billed_bytes/1024/1024/1024\n| fieldsAdd query_cost = gb*toDouble($cost)  \n| lookup [\n  fetch dt.system.query_executions\n  | filter isNotNull(user.email) \n  AND not(in(bucket, \"default_davis_events\",\"dt_system_metrics\",\"default_davis_k8s_ops_events\",\"default_davis_custom_events\",\"default_security_custom_events\",\"default_security_events\",\"default_synthetic_events\",\"default_synthetic_detailed_events\",\"default_selfmon_events\")) \n  AND isNotNull(bucket)\n  AND bucket != \"\"\n  AND status == \"SUCCEEDED\"\n  AND scanned_bytes &amp;gt; 0\n  AND isNotNull(client.application_context) AND isNotNull(client.source)\n  AND in(client.application_context,\"dynatrace.notebooks\",\"dynatrace.dashboards\")\n],\n  sourceField: query_id,\n  lookupField: query_id,\n  prefix: \"executiondata.\",\n  executionOrder:leftFirst\n| sort timestamp desc\n| parse executiondata.client.source,\"LD '/ui/' LD:type '/' LD:id\"\n// //| parse client.application_context,\"'dynatrace.' LD:type 's'\"\n| filter isNotNull(id)\n// //| fieldsAdd length = stringLength(client.application_context)\n| fieldsAdd link = concat(\"[\",executiondata.client.application_context,\"]\",\"(https://{environmentid}.apps.dynatrace.com/ui/apps/\",executiondata.client.application_context,\"/\",type,\"/\",id,\")\")\n// // | fieldsRemove scanned_bytes\n| summarize  Cost = round((sum(query_cost)), decimals:toLong($decimalPlace)),GiB = round(sum(gb), decimals:toLong($decimalPlace)), by:{executiondata.client.application_context, id, link}\n| fieldsAdd costAlert = if(Cost &amp;gt;= toDouble($costAlert), 1, else:0)\n| filterOut Cost &amp;lt;= 0\n| sort Cost desc\n| fields id, link, costAlert, Cost, GiB\n| limit toLong($limit)","visualization":"table","visualizationSettings":{"table":{"hiddenColumns":[["costAlert"]],"lineWrapIds":[["id"],["link"]],"sortBy":[{"columnId":"[\"id\"]","direction":"ascending"}],"columnWidths":{"[\"id\"]":282,"[\"Cost\"]":85},"columnTypeOverrides":[{"id":185949.1000000015,"fields":["link"],"value":"markdown"}]},"coloring":{"colorRules":[{"value":0,"comparator":"=","field":"costAlert","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-status-ideal-default, #2f6863)"},"metadata":{"applyTo":"row"}},{"value":1,"comparator":"=","field":"costAlert","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-status-critical-default, #c4233b)"},"metadata":{"applyTo":"row"}}]},"unitsOverrides":[{"identifier":"GiB","unitCategory":"data","baseUnit":"gibibyte","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1738174421522},{"identifier":"Cost","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759357024938}]},"querySettings":{"maxResultRecords":100000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"davisVisualization":{"isAvailable":true}}},"54":{"title":"Cost by Bucket","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes, timestamp, query_string\n| fieldsAdd gb = billed_bytes/1024/1024/1024\n| fieldsAdd query_cost = gb*toDouble($cost)  \n| lookup [\n  fetch dt.system.query_executions\n  | filter isNotNull(user.email) \n  and not(in(bucket, \"default_davis_events\",\"dt_system_metrics\",\"default_davis_k8s_ops_events\",\"default_davis_custom_events\",\"default_security_custom_events\",\"default_security_events\",\"default_synthetic_events\",\"default_synthetic_detailed_events\",\"default_selfmon_events\")) \n  and isNotNull(bucket)\n  and bucket != \"\"\n  and status == \"SUCCEEDED\"\n  and scanned_bytes &amp;gt; 0\n],\n  sourceField: query_id,\n  lookupField: query_id,\n  prefix: \"executiondata.\",\n  executionOrder:leftFirst\n| sort timestamp desc\n| summarize Cost = round((sum(query_cost)), decimals:toLong($decimalPlace)), GiB = round(sum(gb), decimals:toLong($decimalPlace)),executions = count(), by: {bucket = executiondata.bucket}\n| sort Cost desc\n| fieldsAdd costAlert = if(Cost &amp;gt;= toDouble($costAlert), 1, else:0)\n| fields bucket, costAlert, Cost, GiB, executions\n| filter GiB &amp;gt; 0\n| limit toLong($limit)\n","visualization":"table","visualizationSettings":{"table":{"hiddenColumns":[["costAlert"]],"columnWidths":{"[\"Gigabyte\"]":172.8125,"[\"Cost\"]":122.20442199707031}},"coloring":{"colorRules":[{"value":0,"comparator":"=","field":"costAlert","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-status-ideal-default, #2f6863)"},"metadata":{"applyTo":"row"}},{"value":1,"comparator":"=","field":"costAlert","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-status-critical-default, #c4233b)"},"metadata":{"applyTo":"row"}}]},"unitsOverrides":[{"identifier":"GiB","unitCategory":"data","baseUnit":"gibibyte","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1738174457736},{"identifier":"Cost","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759357017269}]},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"davisVisualization":{"isAvailable":true}}},"56":{"title":"AVG Cost &amp;amp; GB per Execution (Optimization Opportunity)","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes\n| fieldsAdd gb = billed_bytes/1024/1024/1024\n| fieldsAdd query_cost = gb*toDouble($cost)\n| summarize cost = round((sum(query_cost)), decimals:toLong($decimalPlace)), count = count(), gb = sum(gb), by:{user.email}  \n| fieldsAdd costPerExecutionAvg = cost/count, gbPerExecutionAvg = gb/count\n| sort costPerExecutionAvg desc\n| fieldsAdd costAvgPerExecution = if(costPerExecutionAvg &amp;gt;= toDouble($costAvgExecutionAlert), 1, else:0)\n| fields user.email, costAvgPerExecution, cost = round(costPerExecutionAvg,decimals:toLong($decimalPlace)), GiB = round(gbPerExecutionAvg, decimals:toLong($decimalPlace))\n| filter GiB &amp;gt; 0\n| limit toLong($limit)","visualization":"table","visualizationSettings":{"table":{"hiddenColumns":[["costAvgPerExecution"]],"columnWidths":{"[\"user.email\"]":208.25,"[\"costAvgPerExecution\"]":124.47917175292969}},"coloring":{"colorRules":[{"value":0,"comparator":"≥","field":"costAvgPerExecution","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-status-ideal-default, #2f6863)"},"metadata":{"applyTo":"row"}},{"value":1,"comparator":"≥","field":"costAvgPerExecution","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-status-critical-default, #c4233b)"},"metadata":{"applyTo":"row"}}]},"unitsOverrides":[{"identifier":"GiB","unitCategory":"data","baseUnit":"gibibyte","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1738174587669},{"identifier":"cost","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759356542938}]},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"davisVisualization":{"isAvailable":true}}},"57":{"title":"Un-optimized DQL","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes, timestamp, query_string\n| fieldsAdd gb = billed_bytes/1024/1024/1024\n| fieldsAdd query_cost = gb*toDouble($cost)  \n| lookup [\n  fetch dt.system.query_executions\n  | filter isNotNull(user.email) \n  and not(in(bucket, \"default_davis_events\",\"dt_system_metrics\",\"default_davis_k8s_ops_events\",\"default_davis_custom_events\",\"default_security_custom_events\",\"default_security_events\",\"default_synthetic_events\",\"default_synthetic_detailed_events\",\"default_selfmon_events\")) \n  and isNotNull(bucket)\n  and bucket != \"\"\n  and status == \"SUCCEEDED\"\n  and scanned_bytes &amp;gt; 0\n  and isNotNull(query_string)\n  | filterOut (contains(query_string, \"filter\") AND matchesRegex(query_string,\"\\\\\\\\w+\\\\\\\\s*==\\\\\\\\s*\\\\\\\"*\\\\\\\"\"))\n  OR not(contains(query,\"scanLimitGBytes:-1\")) \n  OR contains(query_string,\"filterOut\")\n  OR contains(query_string,\"from:\")\n  OR contains(query_string, \"samplingRatio\")\n  OR contains(query_string, \"experimentalFieldsSummary\")\n  OR contains(query_string, \"limit\")\n],\n  sourceField: query_id,\n  lookupField: query_id,\n  prefix: \"executiondata.\",\n  executionOrder:leftFirst\n| sort timestamp desc\n| summarize Cost = round((sum(query_cost)), decimals:toLong($decimalPlace)), GiB = round(sum(gb), decimals:toLong($decimalPlace)),executions = count(), by: {query = executiondata.query_string}\n| filter isNotNull(query)\n| sort Cost desc\n| fieldsAdd costAlert = if(Cost &amp;gt;= toDouble($costAlert), 1, else:0)\n| fields query, costAlert, Cost, GiB, executions\n| filter GiB &amp;gt; 0\n| limit toLong($limit)","visualization":"table","visualizationSettings":{"table":{"hiddenColumns":[["costAlert"]],"lineWrapIds":[["query"]],"sortBy":[{"columnId":"[\"Cost\"]","direction":"descending"}],"columnWidths":{"[\"query\"]":343,"[\"Gigabyte\"]":104,"[\"costAlert\"]":104}},"coloring":{"colorRules":[{"value":0,"comparator":"=","field":"costAlert","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-status-ideal-default, #2f6863)"},"metadata":{"applyTo":"row"}},{"value":1,"comparator":"=","field":"costAlert","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-status-critical-default, #c4233b)"},"metadata":{"applyTo":"row"}}]},"autoSelectVisualization":false,"unitsOverrides":[{"identifier":"GiB","unitCategory":"data","baseUnit":"gibibyte","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1738174566848},{"identifier":"Cost","unitCategory":"currency","baseUnit":"usd","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759356555871}]},"querySettings":{"maxResultRecords":100000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"davisVisualization":{"isAvailable":true}}},"58":{"title":"Most Expensive Queries","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes, timestamp, query_string, client.application_context, client.source\n| fieldsAdd gb = billed_bytes/1024/1024/1024\n| fieldsAdd query_cost = gb*toDouble($cost)  \n| lookup [\n  fetch dt.system.query_executions\n  | filter isNotNull(user.email) \n  and not(in(bucket, \"default_davis_events\",\"dt_system_metrics\",\"default_davis_k8s_ops_events\",\"default_davis_custom_events\",\"default_security_custom_events\",\"default_security_events\",\"default_synthetic_events\",\"default_synthetic_detailed_events\",\"default_selfmon_events\")) \n  and isNotNull(bucket)\n  and bucket != \"\"\n  and status == \"SUCCEEDED\"\n  and scanned_bytes &amp;gt; 0\n  and isNotNull(query_string)\n  and query_string != \"\"\n],\n  sourceField: query_id,\n  lookupField: query_id,\n  prefix: \"executiondata.\",\n  executionOrder:leftFirst\n| parse client.source,\"LD '/ui/' LD:type '/' LD:id\"\n| fieldsAdd link = concat(\"[\",client.application_context,\"]\",\"(https://{environmentid}.apps.dynatrace.com/ui/apps/\",client.application_context,\"/\",type,\"/\",id,\")\")  \n| sort timestamp desc\n| summarize Cost = round((sum(query_cost)), decimals:toLong($decimalPlace)), GiB = round(sum(gb), decimals:toLong($decimalPlace)),executions = count(), by: {query = executiondata.query_string, link}\n| sort Cost desc\n| fieldsAdd costAlert = if(Cost &amp;gt;= toDouble($costAlert), 1, else:0)\n| fields query, costAlert, Cost, GiB, executions, link\n| filter GiB &amp;gt; 0\n| limit toLong($limit)","visualization":"table","visualizationSettings":{"table":{"hiddenColumns":[["costAlert"]],"lineWrapIds":[["query"]],"sortBy":[{"columnId":"[\"client.application_context\"]","direction":"ascending"}],"columnTypeOverrides":[{"id":465735,"fields":["link"],"value":"markdown","disableRemoval":false}],"columnWidths":{"[\"Cost\"]":47.7}},"coloring":{"colorRules":[{"value":0,"comparator":"=","field":"costAlert","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-status-ideal-default, #2f6863)"},"metadata":{"applyTo":"row"},"type":"long"},{"value":1,"comparator":"=","field":"costAlert","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-status-critical-default, #c4233b)"},"metadata":{"applyTo":"row"},"type":"long"}]},"unitsOverrides":[{"identifier":"GiB","unitCategory":"data","baseUnit":"gibibyte","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1738174544061}]},"querySettings":{"maxResultRecords":100000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"davisVisualization":{"isAvailable":true}}},"60":{"type":"markdown","content":"DQL Usage Overview version: *$version*"},"61":{"title":"Last 24h","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes, timestamp\n| makeTimeseries daily=sum(billed_bytes/1024/1024/1024), interval:1d\n| fieldsAdd yesterday = arrayLast(daily)","visualization":"singleValue","visualizationSettings":{"singleValue":{"labelMode":"none","label":"yesterday","recordField":"yesterday","prefixIcon":"","sparklineSettings":{"record":"daily"},"trend":{"isVisible":true}},"unitsOverrides":[{"identifier":"yesterday","unitCategory":"data","baseUnit":"gibibyte","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1718620268306}]},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"enabled":false,"davisVisualization":{"isAvailable":true}},"timeframe":{"tileTimeframeEnabled":true,"tileTimeframe":{"from":"now()-30d","to":"now()"}}},"62":{"title":"DQL Cost","type":"data","query":"fetch dt.system.events\n| filter event.kind == \"BILLING_USAGE_EVENT\" and matchesPhrase(event.type, \"Query\")\nAND isNotNull(user.email)\nAND in(event.type,$DataType)\nand in(user.email,$user)\n| fields query_start, event.type, query_id, user.email, billed_bytes, timestamp\n| fieldsAdd query_cost = billed_bytes/1024/1024/1024*toDouble($cost)\n| makeTimeseries cost = sum(query_cost)\n| fieldsAdd totalCost = round(arraySum(cost),decimals:toLong($decimalPlace))","visualization":"singleValue","visualizationSettings":{"singleValue":{"labelMode":"none","label":"totalCost","recordField":"totalCost","prefixIcon":"","sparklineSettings":{"record":"cost"},"trend":{"isVisible":true}},"unitsOverrides":[{"identifier":"yesterday","unitCategory":"data","baseUnit":"byte","displayUnit":null,"decimals":1,"suffix":"","delimiter":true,"cascade":null,"added":1718620268306},{"identifier":"cost","unitCategory":"currency","baseUnit":"eur","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759851609664},{"identifier":"totalCost","unitCategory":"currency","baseUnit":"eur","displayUnit":null,"decimals":2,"suffix":"","delimiter":false,"cascade":null,"added":1759851638123}]},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":100,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"enabled":false,"davisVisualization":{"isAvailable":true}},"timeframe":{"tileTimeframe":{"from":"now()-30d","to":"now()"},"tileTimeframeEnabled":false}},"63":{"title":"","type":"data","query":"data record(text=\"Optimization Opportunity\")","visualization":"singleValue","visualizationSettings":{"singleValue":{"labelMode":"none","label":"text","recordField":"text","isIconVisible":true,"prefixIcon":"DqlSignetIcon","colorThresholdTarget":"background","trend":{"isVisible":false}},"coloring":{"colorRules":[{"value":"Optimization Opportunity","comparator":"≥","field":"text","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-categorical-color-09-default, #649438)"}}]},"autoSelectVisualization":false},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":1,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"enabled":false,"davisVisualization":{"isAvailable":true}}},"64":{"title":"","type":"data","query":"data record(text=\"Deep-Dive\")","visualization":"singleValue","visualizationSettings":{"singleValue":{"labelMode":"none","label":"text","recordField":"text","isIconVisible":true,"prefixIcon":"DqlSignetIcon","colorThresholdTarget":"background","trend":{"isVisible":false}},"coloring":{"colorRules":[{"value":"Deep-Dive","comparator":"≥","field":"text","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-categorical-color-11-default, #627cfe)"}}]},"autoSelectVisualization":false},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":1,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"enabled":false,"davisVisualization":{"isAvailable":true}}},"65":{"title":"","type":"data","query":"data record(text=\"User Analysis\")","visualization":"singleValue","visualizationSettings":{"singleValue":{"labelMode":"none","label":"text","recordField":"text","isIconVisible":true,"prefixIcon":"DqlSignetIcon","colorThresholdTarget":"background","trend":{"isVisible":false}},"coloring":{"colorRules":[{"value":"User Analysis","comparator":"≥","field":"text","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-loglevel-alert-default, #c73d84)"}}]},"autoSelectVisualization":false},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":1,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"enabled":false,"davisVisualization":{"isAvailable":true}}},"66":{"title":"","type":"data","query":"data record(text=\"Daily/Weekly/Monthly (Usage (GiB) and Costs)\")","visualization":"singleValue","visualizationSettings":{"singleValue":{"labelMode":"none","label":"text","recordField":"text","isIconVisible":true,"prefixIcon":"DqlSignetIcon","colorThresholdTarget":"background","trend":{"isVisible":false}},"coloring":{"colorRules":[{"value":"Daily/Weekly/Monthly (Usage (GiB) and Costs)","comparator":"≥","field":"text","colorMode":"custom-color","customColor":{"Default":"var(--dt-colors-charts-categorical-color-07-default, #438fb1)"}}]},"autoSelectVisualization":false},"querySettings":{"maxResultRecords":1000,"defaultScanLimitGbytes":500,"maxResultMegaBytes":1,"defaultSamplingRatio":10,"enableSampling":false},"davis":{"enabled":false,"davisVisualization":{"isAvailable":true}}}},"layouts":{"34":{"x":5,"y":0,"w":7,"h":4},"36":{"x":5,"y":4,"w":7,"h":3},"37":{"x":0,"y":4,"w":5,"h":3},"39":{"x":20,"y":1,"w":4,"h":3},"40":{"x":16,"y":1,"w":4,"h":3},"42":{"x":20,"y":4,"w":4,"h":3},"43":{"x":16,"y":4,"w":4,"h":3},"44":{"x":12,"y":4,"w":4,"h":3},"46":{"x":0,"y":16,"w":6,"h":4},"47":{"x":0,"y":12,"w":6,"h":4},"48":{"x":0,"y":8,"w":6,"h":4},"49":{"x":6,"y":8,"w":18,"h":12},"52":{"x":16,"y":21,"w":8,"h":6},"53":{"x":0,"y":21,"w":8,"h":6},"54":{"x":8,"y":21,"w":8,"h":6},"56":{"x":16,"y":28,"w":8,"h":6},"57":{"x":8,"y":28,"w":8,"h":6},"58":{"x":0,"y":28,"w":8,"h":6},"60":{"x":0,"y":34,"w":9,"h":1},"61":{"x":12,"y":1,"w":4,"h":3},"62":{"x":0,"y":0,"w":5,"h":4},"63":{"x":0,"y":27,"w":24,"h":1},"64":{"x":0,"y":20,"w":24,"h":1},"65":{"x":0,"y":7,"w":24,"h":1},"66":{"x":12,"y":0,"w":12,"h":1}},"importedWithCode":false,"settings":{},"annotations":[]}&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 11 Aug 2026 08:31:34 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/AI/Agentic-AI-cost-limits-and-per-user-consumption-monitoring/m-p/303072#M223</guid>
      <dc:creator>dylan_taelemans</dc:creator>
      <dc:date>2026-08-11T08:31:34Z</dc:date>
    </item>
  </channel>
</rss>

