update
Updates a context with new data.
context::update name:string, key=any, [value=any, create_timeout=duration, write_timeout=duration, read_timeout=duration]
Description
Section titled “Description”The context::update
operator adds new data to a specified context.
Use the key
argument to specify the field in the input that should be
associated with the context. The context::enrich
operator uses
this key to access the context. For contexts that support assigning a value with
a given key, you can provide an expression to customize what’s being associated
with the given key.
The three arguments create_timeout
, write_timeout
, and read_timeout
only
work with lookup tables and set the respective timeouts per table entry.
name: string
Section titled “name: string”The name of the context to update.
key = any
Section titled “key = any”The field that represents the enrichment key in the data.
value = any (optional)
Section titled “value = any (optional)”The field that represents the enrichment value to associate with key
.
Defaults to this
.
create_timeout = duration (optional)
Section titled “create_timeout = duration (optional)”Expires a context entry after a given duration since entry creation.
write_timeout = duration (optional)
Section titled “write_timeout = duration (optional)”Expires a context entry after a given duration since the last update time. Every
Every call to context::update
resets the timeout for the respective key.
read_timeout = duration (optional)
Section titled “read_timeout = duration (optional)”Expires a context entry after a given duration since the last access time.
Every call to context::enrich
resets the timeout for the respective key.
Examples
Section titled “Examples”Populate a lookup table with data
Section titled “Populate a lookup table with data”Create a lookup table:
context::create_lookup_table "ctx"
Add data to the lookup table via context::update
:
from {x:1, y:"a"}, {x:2, y:"b"}context::update "ctx", key=x, value=y
Retrieve the lookup table contents:
context::inspect "ctx"
{key: 2, value: "b"}{key: 1, value: "a"}
Use a custom value as lookup table
Section titled “Use a custom value as lookup table”from {x:1}, {x:2}context::update "ctx", key=x, value=x*x
{key: 2, value: 4}{key: 1, value: 1}
See Also
Section titled “See Also”context::create_bloom_filter
,
context::create_geoip
,
context::create_lookup_table
,
context::enrich
,
context::erase
,
context::inspect
,
context::list
,
context::load
,
context::remove
,
context::reset
,
context::save