Generator configuration
discard
Commentary
added in 0.0.34
local configuration
global configuration
The rate at which to generate an event and not send it to the associated connection.
Examples
Local configuration
Use localConfigs
to set discard
locally for one generator.
{
"generators": [
{
"table": "orders",
"row": {
"orderId": {
"_gen": "uuid"
},
"orderDate": {
"_gen": "dateToday"
}
},
"localConfigs": {
"discard": {
"rate": 0.05
}
}
}
]
}
Global configuration
Use globalConfigs
to set discard
globally for all generators.
{
"generators": [
{
"table": "orders",
"row": {
"orderId": {
"_gen": "uuid"
},
"orderDate": {
"_gen": "dateToday"
}
}
}
],
"globalConfigs": {
"localConfigs": {
"discard": {
"rate": 0.02
}
}
}
}
Retain history
If you want to simulate a generator believing that it sent data, but actually discarding it, set retainHistory
to true
.
This will cause all discarded events to get saved to history, so when other generators look up data against it, it will provide those events.
In the example below, a
discards 20% of its events, but b
is able to look up all of it: the 80% actually sent, plus the 20% it dropped.
{
"generators": [
{
"topic": "a",
"value": {
"_gen": "boolean"
},
"localConfigs": {
"discard": {
"rate": 0.2,
"retainHistory": true
}
}
},
{
"topic": "b",
"value": {
"_gen": "lookup",
"topic": "a",
"path": [
"value"
]
}
}
]
}
Specification
JSON schema
{
"type": "object",
"properties": {
"rate": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"retainHistory": {
"type": "boolean"
}
},
"required": [
"rate"
]
}