Skip to main content

YAUAA enrichment

YAUAA (Yet Another User Agent Analyzer) enrichment is a powerful user agent parser and analyzer.

It uses YAUAA API to parse and analyze the user agent string of an HTTP request and extract as many relevant information as possible about the user's device and browser, like for instance the device class (Phone, Tablet, etc.).

YAUAA parsing relies entirely on in-memory HashMaps and require roughly 400 MB of RAM (see here). Additional memory is also needed if caching is enabled (by default).

There is no interaction with an external system.


Only one parameter can be set in the configuration : cacheSize. This field determines the number of already parsed user agents that are kept in memory for faster processing. If set to 0, caching is disabled. If not set, a default size is used for the cache (10000).


This enrichment uses the field useragent.


This enrichment adds a new derived context to the enriched event with this schema (since enrich 1.4.0).

If a field can't be figured out by the algorithm, it won't be in the output. But some fields can have value UNKNOWN.

The only field that will always be present is deviceClass.

Here is an example of a derived context attached by this enrichment for a page visited with a Samsung Galaxy S9:

"data": {
"deviceName":"Samsung SM-G960F",
"operatingSystemNameVersion":"Android 8.0.0",
"layoutEngineNameVersion":"Blink 62.0",
"layoutEngineNameVersionMajor":"Blink 62",
"agentNameVersion":"Chrome 62.0.3202.84",
"agentNameVersionMajor":"Chrome 62"

The full output possiblities generated by the YAUAA algorithm can be found here.