Uploaded image for project: 'Beam'
  1. Beam
  2. BEAM-12116

Consider adding MetricFiltering classes for metrics names with urns and labels.

Details

    • Test
    • Status: Open
    • P3
    • Resolution: Unresolved
    • None
    • None
    • sdk-ideas
    • None

    Description

      These classes today can only filter metrics with user metric names. Which are defined with a namespace and name string.

      But does not allow filtering metrics defined with a URN + labels.

      I.e. those defined with the MonitoringInfoMetricName class instead of the MetricName class.

      Having this sort of MetricName filtering class would be useful for some SDK/runner use cases such as the metric filtering in MetricContainerImpl.matchMetric.

      We could consider updating the MetricFiltering, MetricNameFilter, MetricFilter, etc. classes with a way to filter metrics defined by URN and laels.

      The problem with doing this though, is that those classes were originally intended to be a public set of methods for querying metrics within your pipeline code. So a better solution would be to have a layer for the public API to do filtering, and an internal layer which can filter based on any MetricName type, including MonitoringInfoMetric name.

      And allow building it based on specific rules, such as hasUrn, hasLabelKey, hasLabelKeyValuePair, etc.)

       

       

      Attachments

        Activity

          People

            Unassigned Unassigned
            ajamato@google.com Alex Amato
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated: