<?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 Joining Grail metrics with BizEvents metadata in a single DQL table in DQL</title>
    <link>https://community.dynatrace.com/t5/DQL/Joining-Grail-metrics-with-BizEvents-metadata-in-a-single-DQL/m-p/298570#M3320</link>
    <description>&lt;P&gt;&lt;SPAN&gt;I’m working on a use case where all proxy metadata is ingested as BizEvents and displayed in a table. In addition, I’ve defined a derived variable ProxyStatus that toggles between &lt;EM&gt;Active&lt;/EM&gt; and &lt;EM&gt;Inactive&lt;/EM&gt; depending on the request count over the last 30 days.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;The challenge is that the request count comes from &lt;STRONG&gt;Grail metrics&lt;/STRONG&gt;, while the proxy metadata comes from &lt;STRONG&gt;BizEvents&lt;/STRONG&gt;. I’d like to add filtering in the table so that I can switch between active and inactive proxies, but this requires combining both sources.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;My question:&lt;/SPAN&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;P&gt;&lt;SPAN&gt;Is there a way in &lt;STRONG&gt;DQL&lt;/STRONG&gt; to join metrics from Grail with BizEvents metadata into a single query result?&lt;/SPAN&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;SPAN&gt;If so, what’s the recommended approach — e.g., using lookup(), &amp;nbsp;join(), &amp;nbsp;or some other operator to correlate metric time series with event attributes?&lt;/SPAN&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;SPAN&gt;Are there constraints around joining across Grail metrics and BizEvents that I should be aware of (performance, schema alignment, etc.)?&lt;/SPAN&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;SPAN&gt;Any examples or best practices for combining these two data sources into one table view would be very helpful.&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Tue, 28 Apr 2026 13:09:32 GMT</pubDate>
    <dc:creator>achoud22</dc:creator>
    <dc:date>2026-04-28T13:09:32Z</dc:date>
    <item>
      <title>Joining Grail metrics with BizEvents metadata in a single DQL table</title>
      <link>https://community.dynatrace.com/t5/DQL/Joining-Grail-metrics-with-BizEvents-metadata-in-a-single-DQL/m-p/298570#M3320</link>
      <description>&lt;P&gt;&lt;SPAN&gt;I’m working on a use case where all proxy metadata is ingested as BizEvents and displayed in a table. In addition, I’ve defined a derived variable ProxyStatus that toggles between &lt;EM&gt;Active&lt;/EM&gt; and &lt;EM&gt;Inactive&lt;/EM&gt; depending on the request count over the last 30 days.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;The challenge is that the request count comes from &lt;STRONG&gt;Grail metrics&lt;/STRONG&gt;, while the proxy metadata comes from &lt;STRONG&gt;BizEvents&lt;/STRONG&gt;. I’d like to add filtering in the table so that I can switch between active and inactive proxies, but this requires combining both sources.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;My question:&lt;/SPAN&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;P&gt;&lt;SPAN&gt;Is there a way in &lt;STRONG&gt;DQL&lt;/STRONG&gt; to join metrics from Grail with BizEvents metadata into a single query result?&lt;/SPAN&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;SPAN&gt;If so, what’s the recommended approach — e.g., using lookup(), &amp;nbsp;join(), &amp;nbsp;or some other operator to correlate metric time series with event attributes?&lt;/SPAN&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;SPAN&gt;Are there constraints around joining across Grail metrics and BizEvents that I should be aware of (performance, schema alignment, etc.)?&lt;/SPAN&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;SPAN&gt;Any examples or best practices for combining these two data sources into one table view would be very helpful.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 28 Apr 2026 13:09:32 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/DQL/Joining-Grail-metrics-with-BizEvents-metadata-in-a-single-DQL/m-p/298570#M3320</guid>
      <dc:creator>achoud22</dc:creator>
      <dc:date>2026-04-28T13:09:32Z</dc:date>
    </item>
    <item>
      <title>Re: Joining Grail metrics with BizEvents metadata in a single DQL table</title>
      <link>https://community.dynatrace.com/t5/DQL/Joining-Grail-metrics-with-BizEvents-metadata-in-a-single-DQL/m-p/298717#M3323</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.dynatrace.com/t5/user/viewprofilepage/user-id/95832"&gt;@achoud22&lt;/a&gt;,&lt;/P&gt;&lt;P&gt;Yes, you can combine BizEvents and Grail metrics in one DQL result. I would start from the proxy metadata BizEvents, reduce them to one row per proxy, then use a lookup or leftOuter join against a timeseries subquery that calculates the request count for the last 30 days. The important part is to make the metric side return one scalar value per proxy, not a raw timeseries array. Then you can derive ProxyStatus directly in the same query and use it as a dashboard/table filter.&lt;/P&gt;&lt;P&gt;In most cases I’d use lookup for this because you are enriching metadata with one calculated metric value. Use join only if you need more complex matching behavior. Just make sure both sides share a stable key and that the lookup/join side is deduplicated to avoid unexpected results.&lt;/P&gt;&lt;P&gt;You can try something like this too:&lt;/P&gt;&lt;LI-CODE lang="javascript"&gt;fetch bizevents
| filter event.type == "proxy.metadata"
| sort timestamp desc
| dedup proxy_id
| fields
    proxy_id,
    proxy_name,
    proxy_owner,
    proxy_environment,
    proxy_url

| join [
    timeseries request_count_30d =
        sum(dt.service.request.count, scalar: true),
        by: { proxy_id },
        from: -30d
    | fields proxy_id, request_count_30d
  ],
  kind: leftOuter,
  on: { left[proxy_id] == right[proxy_id] },
  fields: { request_count_30d }

| fieldsAdd
    request_count_30d = coalesce( request_count_30d, 0),
    ProxyStatus = if(request_count_30d &amp;gt; 0, "Active", else: "Inactive")&lt;/LI-CODE&gt;&lt;P&gt;I hope it helps you&amp;nbsp;&lt;span class="lia-unicode-emoji" title=":grinning_face_with_big_eyes:"&gt;😃&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 29 Apr 2026 20:56:13 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/DQL/Joining-Grail-metrics-with-BizEvents-metadata-in-a-single-DQL/m-p/298717#M3323</guid>
      <dc:creator>MaximilianoML</dc:creator>
      <dc:date>2026-04-29T20:56:13Z</dc:date>
    </item>
  </channel>
</rss>

