Data Collector uses JMX metrics to generate the graphical display of the status of a running pipeline. You can provide the same JMX metrics to external tools if desired.
Information provided by JMX metrics includes pipeline details like a histogram for the number of error records per batch or the amount of memory the pipeline uses. Stage-related details are also provided, such as the number of output records or stage errors. Some stages have stage-related custom metrics.
You can pass the variables in the command line as part of the SDC_JAVA_OPTS environment variable. Or, you can add the variables to the SDC_JAVA_OPTS environment variable in the required file for your installation type, as described in Modifying Environment Variables.
For example, the following set of variables passes JMX metrics through port 3333:
export SDC_JAVA_OPTS="-Dcom.sun.management.jmxremote \ -Dcom.sun.management.jmxremote.port=3333 \ -Dcom.sun.management.jmxremote.local.only=false \ -Dcom.sun.management.jmxremote.authenticate=false \ -Dcom.sun.management.jmxremote.ssl=false"
You can view the Data Collector JMX metrics in external tools. The Data Collector JMX metric names all begin with "sdc.pipeline."
Data Collector JMX metrics use the following naming pattern:
sdc.pipeline.<pipeline name>.<pipeline revision>.<category: pipeline|stage|custom>.\ [<stage library>_<library revision>].<metric name>.<metric type>
For example, the following is a batch count meter for the first revision of a pipeline named Write to Kafka:
sdc.pipeline.Write to Kafka.0.pipeline.batchCount.meter
sdc.pipeline.Write to Kafka.0.stage.\ com_streamsets_pipeline_stage_origin_logtail_FileTailDSource_1.memoryConsumed.counter
Data Collector provides custom metrics for some stages. When a pipeline includes the stages below, you can view custom metrics for the stages in the Data Collector UI in Monitor mode or when you view JMX metrics using an external tool:
sdc.pipeline.<pipeline name>.<pipeline revision>.custom.\ com_streamsets_pipeline_stage_origin_logtail_FileTailDSource_\ <library version>.offsets.lag.<file path>.counter
sdc.pipeline.<pipeline name>.<pipeline revision>.custom.\ com_streamsets_pipeline_stage_origin_logtail_FileTailDSource_\ <library version>.pending.files.<file path>.counter
sdc.pipeline.<pipeline name>.<pipeline revision>.custom.\ com_streamsets_pipeline_stage_destination_s3_\ AmazonS3DTarget_<library version>.transferRateKb.meter
sdc.pipeline.<pipeline name>.<pipeline revision>.custom.\ com_streamsets_pipeline_stage_destination_HdfsTarget_\ HDFSDTarget_<library version>.lateRecords.<counter | metric>
sdc.pipeline.<pipeline name>.<pipeline revision>.custom.\ com_streamsets_pipeline_stage_destination_HdfsTarget_\ HDFSDTarget_<library version>.hdfsRecords.<counter | metric>
sdc.pipeline.<pipeline name>.<pipeline revision>.custom.\ com_streamsets_pipeline_stage_destination_HdfsTarget_HDFSDTarget_\ <library version>.transferRateKb.meter
sdc.pipeline.<pipeline name>.<pipeline revision>.custom.\ com_streamsets_pipeline_stage_destination_localfilesystem_\ LocalFileSystemDTarget_<library version>.lateRecords.\ <counter | metric>
sdc.pipeline.<pipeline name>.<pipeline revision>.custom.\ com_streamsets_pipeline_stage_destination_localfilesystem_\ LocalFileSystemDTarget_<library version>.hdfsRecords.\ <counter | metric>
sdc.pipeline.<pipeline name>.<pipeline revision>.custom.\ com_streamsets_pipeline_stage_destination_localfilesystem_\ LocalFileSystemDTarget_<library version>.transferRateKb.meter
sdc.pipeline.<pipeline name>.<pipeline revision>.custom.\ com_streamsets_pipeline_stage_destination_marpfs_\ MaprFSDTarget_<library version>.lateRecords.<counter | metric>
sdc.pipeline.<pipeline name>.<pipeline revision>.custom.\ com_streamsets_pipeline_stage_destination_marpfs_\ MaprFSDTarget_<library version>.hdfsRecords.<counter | metric>
sdc.pipeline.<pipeline name>.<pipeline revision>.custom.\ com_streamsets_pipeline_stage_destination_marpfs_MaprFSDTarget_\ <library version>.transferRateKb.meter