Telemetry
Stream metric data to a file and/or to the console.
Description
An advanced "print" listener outputting a CSV report with optional live data streamed to the console.
Configuration
Required type for configuring the Telemetry listener from an ini
file.
type "telemetry"
Options
Listener Options | Type | Description | Required? | Default |
---|---|---|---|---|
|
| Must be " | y | |
|
| Unique name of the listener | y | "" |
|
| The filename of the final report. | y | "" |
|
| Set true for live streaming of metric values to stdout | n | 0 |
Metric Rules | ||||
|
| One or more metrics to be observed. If this is empty no metrics are reported. | n | "" |
|
| Sampling interval in MS for the metrics requested in preceding | n | 6000 (1 minute) |
Configuration Example
Enable streaming telemetry output with final CSV report written to: roz_telemetry.csv
. Report all of the "numRays" metrics, sampling 4x per second, and report process memory and time once per second.
telemetry_stats.ini
[Listener]
type "telemetry"
name "telemetryListener"
outputFilename "roz_telemetry.csv"
streamToConsole 1
[MetricRules]
# Sample raytracing "numRays" metrics 4x a second
[Rule]
regexp "/rman/raytracing.*numRays"
samplingInterval 250
# Sample process memory and time once a second
[Rule]
regexp "/system.processMemory|/system.processTime"
samplingInterval 1000
Output Example
prman -statsconfig telemetry_stats.ini scene.rib
METRIC {"/rman/raytracing.numRays": 123280}
METRIC {"/rman/raytracing/camera.numRays": 49536}
METRIC {"/rman/raytracing/transmission.numRays": 47213}
METRIC {"/rman/raytracing/photon.numRays": 0}
METRIC {"/rman/raytracing/light.numRays": 33870}
METRIC {"/rman/raytracing/indirect.numRays": 2464}
METRIC {"/rman/raytracing.numRays": 3012270}
METRIC {"/rman/raytracing/camera.numRays": 255488}
METRIC {"/rman/raytracing/transmission.numRays": 1409183}
METRIC {"/rman/raytracing/photon.numRays": 0}
METRIC {"/rman/raytracing/light.numRays": 1200027}
METRIC {"/rman/raytracing/indirect.numRays": 147703}
METRIC {"/rman/raytracing.numRays": 9161961}
METRIC {"/rman/raytracing/camera.numRays": 857448}
METRIC {"/rman/raytracing/transmission.numRays": 4216917}
METRIC {"/rman/raytracing/photon.numRays": 0}
METRIC {"/rman/raytracing/light.numRays": 3638169}
METRIC {"/rman/raytracing/indirect.numRays": 453493}
METRIC {"/system.processMemory": [3003166720, 485937152, 486612992]}
METRIC {"/system.processTime": [12.66, 0.71, 1331.42]}
METRIC {"/rman/raytracing.numRays": 15209955}
METRIC {"/rman/raytracing/camera.numRays": 1450911}
METRIC {"/rman/raytracing/transmission.numRays": 6969106}
METRIC {"/rman/raytracing/photon.numRays": 0}
METRIC {"/rman/raytracing/light.numRays": 6035551}
METRIC {"/rman/raytracing/indirect.numRays": 754633}
METRIC {"/rman/raytracing.numRays": 21381282}
METRIC {"/rman/raytracing/camera.numRays": 1818799}
METRIC {"/rman/raytracing/transmission.numRays": 9990314}
METRIC {"/rman/raytracing/photon.numRays": 0}
METRIC {"/rman/raytracing/light.numRays": 8511363}
METRIC {"/rman/raytracing/indirect.numRays": 1062842}
METRIC {"/rman/raytracing.numRays": 27563680}
METRIC {"/rman/raytracing/camera.numRays": 2144142}
METRIC {"/rman/raytracing/transmission.numRays": 13056810}
METRIC {"/rman/raytracing/photon.numRays": 0}
METRIC {"/rman/raytracing/light.numRays": 10987975}
METRIC {"/rman/raytracing/indirect.numRays": 1374753}
METRIC {"/rman/raytracing.numRays": 33584953}
METRIC {"/rman/raytracing/camera.numRays": 2455721}
METRIC {"/rman/raytracing/transmission.numRays": 16061479}
METRIC {"/rman/raytracing/photon.numRays": 0}
METRIC {"/rman/raytracing/light.numRays": 13391247}
METRIC {"/rman/raytracing/indirect.numRays": 1676756}
METRIC {"/rman/raytracing/light.numRays": 13417487}
METRIC {"/system.processTime": [12.66, 0.71, 1331.42]}
METRIC {"/system.processMemory": [3003166720, 485937152, 486612992]}
METRIC {"/rman/raytracing.numRays": 33623962}
METRIC {"/rman/raytracing/indirect.numRays": 1681043}
METRIC {"/rman/raytracing/camera.numRays": 2455721}
METRIC {"/rman/raytracing/transmission.numRays": 16069711}
METRIC {"/rman/raytracing/photon.numRays": 0}
Roz: TelemetryListener: Writing to : roz_telemetry.csv
[
{"/rman/raytracing/indirect.numRays": 1681043},
{"/rman/raytracing.numRays": 33623962},
{"/rman/raytracing/transmission.numRays": 16069711},
{"/rman/raytracing/photon.numRays": 0},
{"/system.processMemory": [3003166720, 485937152, 486612992]},
{"/rman/raytracing/camera.numRays": 2455721},
{"/rman/raytracing/light.numRays": 13417487},
{"/system.processTime": [12.66, 0.71, 1331.42]}
]