Project

General

Profile

Feature #23646

Simple Metric Sender

Added by Eric Flumerfelt 2 months ago. Updated 19 days ago.

Status:
Reviewed
Priority:
Normal
Category:
Additional Functionality
Target version:
-
Start date:
11/22/2019
Due date:
% Done:

0%

Estimated time:
Experiment:
DUNE
Co-Assignees:
Duration:

Description

For the DUNE Dataflow Working Group, I created a presentation on the artdaq metric reporting subsystem. For this presentation, I created a small application that served as the minimum working example for artdaq metric reporting.

History

#1 Updated by Eric Flumerfelt 2 months ago

  • Assignee set to Eric Flumerfelt
  • Status changed from New to Resolved
  • Category set to Additional Functionality

Implementation on artdaq:feature/23646_simple_metric_sender.

#2 Updated by Eric Flumerfelt 2 months ago

  • Experiment DUNE added
  • Experiment deleted (-)

#3 Updated by John Freeman 19 days ago

  • Status changed from Resolved to Reviewed

After building simple_metric sender, I was able to successfully send metrics to an ASCII file with these commands on mu2edaq:

cd /home/jcfree/artdaq-demo_issue23646
source setupARTDAQDEMO
export ARTDAQ_LOG_ROOT=$PWD
simple_metric_sender -c  sample_simple_metric_sender_config.fcl

where the contents of sample_simple_metric_sender_config.fcl were:

   simple_metric_sender: {

      ## The maximum number of metric entries which can be stored in the metric queue.

      metric_queue_size: 1000  # default

      ## The number of metric entries in the list which will cause reports of the queue size to be printed.

      metric_queue_notify_size: 10  # default

      ## The maximum amount of time between metric send calls (will send 0s for metrics which have not reported in this interval)

      metric_send_maximum_delay_ms: 15000  # default

      ## Whether to collect and send system metrics such as CPU usage, Memory usage and network activity.

      send_system_metrics: false  # default

      ## Whether to collect and send process CPU usage and Memory usage

      send_process_metrics: false  # default

       ## The name of the metric plugin to load (may have additional configuration parameters

       metricPluginType: "file" 
       fileName: "simple_metric_sender_output.log" 
       absolute_file_path: false
       uniquify: true   

       ## The verbosity level threshold for this plugin. sendMetric calls with verbosity level greater than this will not be sent to the plugin. OPTIONAL

       level: 4  # default

       ## How often recorded metrics are sent to the underlying metric storage

       reporting_interval: 15.0000  # default

       ## Whether zeros should be sent to the metric back-end when metrics are not reported in an interval and during shutdown

       send_zeros: true  # default
 }

Note that this was basically my modification of the output of "simple_metric_sender -h", but that I had to remove the metricConfig table which wrapped the metricPluginType definition for this to work.



Also available in: Atom PDF