You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+33Lines changed: 33 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -49,6 +49,33 @@ flowchart TD
49
49
***Executor**: produces concurrent executions of workflows and activities requested by the Scenario
50
50
***Workers**: consumes the workflows and activities started by the Executor
51
51
52
+
### Process Metrics Sidecar
53
+
54
+
Omes includes a process metrics sidecar - a Go-based HTTP server that monitors CPU and memory usage of the worker process. The sidecar is started by `run-worker` (or `run-scenario-with-worker`) after spawning the worker subprocess.
-`--worker-process-metrics-address` - Address for the sidecar HTTP server (required to enable)
62
+
-`--worker-metrics-version-tag` - SDK version to report in `/info` (defaults to `--version`)
63
+
64
+
**Example:**
65
+
```sh
66
+
go run ./cmd run-worker --language python --run-id my-run \
67
+
--worker-process-metrics-address :9091 \
68
+
--worker-metrics-version-tag v1.24.0
69
+
```
70
+
71
+
**Metrics export:**
72
+
73
+
When using the Prometheus instance (`--prom-instance-addr`), sidecar metrics can be exported to parquet files on shutdown. The export includes SDK version, build ID, and language from the `/info` endpoint.
74
+
75
+
-`--prom-export-worker-metrics` - Path to export metrics parquet file
76
+
-`--prom-export-process-job` - Prometheus job name for process metrics (default: `omes-worker-process`)
77
+
-`--prom-export-worker-info-address` - Address to fetch `/info` from during export (e.g., `localhost:9091`)
78
+
52
79
## Usage
53
80
54
81
### Define a scenario
@@ -214,6 +241,12 @@ You can run the fuzzer with new random actions like so:
214
241
go run ./cmd run-scenario-with-worker --scenario fuzzer --iterations 1 --language cs
215
242
```
216
243
244
+
The fuzzer automatically creates a Nexus endpoint and generates Nexus operations. To use an existing endpoint instead:
245
+
246
+
```sh
247
+
go run ./cmd run-scenario-with-worker --scenario fuzzer --iterations 1 --language go --option nexus-endpoint=my-endpoint
248
+
```
249
+
217
250
By default, the scenario will spit out a `last_fuzz_run.proto` binary file containing the generated
218
251
actions. To re-run the same set of actions, you can pass in such a file like so:
0 commit comments