Commit Graph

9 Commits (f6bbf7b61760977e33ba5a77e396127a85f0a5c2)

Author SHA1 Message Date
Paul Dix f50f4cb719 fix: typos in data generator full example 2021-11-04 09:56:58 -04:00
Paul Dix 7d90314f2b fix: data generator example 2021-11-04 09:56:58 -04:00
Paul Dix 7044b89453 feat: Refactor Data Generator
This is a huge commit that refactors the data generator. It removes many of the previous features that didn't quite make sense. The goal of this refactor was to make the data generator capable of representing complex tagsets that have values dependent on each other. It also significantly optimizes things to use far less memory and generate data much faster. Follow on work will update the generation of line protocol to support spaces in tags and their keys, double quotes in strings, and add more examples and documentation.
2021-11-04 09:56:58 -04:00
Paul Dix db2f8a58fc feat: Add tag_set and tag_pairs to measurements in Data Generator
This adds the ability to specify a tag_set and a collection of tag_pairs to measurements in the data generator. Tag pairs are evaluated once when the generator is created. This avoids re-running handlebars evaluations while generating data for tags that don't change value.

This commit also fixes an issue when printing the generation output to stdout while generating from more than one agent. Previously it would be garbled together.

Follow on PRs will update the tag generation code in measurement specs to be more consistent and optimzised for performance. I'll be removing the restriction of using different options while using tag_set and tag_pairs. I wanted to get this in first to show the structure of what is output.
2021-11-04 09:56:58 -04:00
Paul Dix 6d3ac4db46 chore: pr cleanup on data generator 2021-09-13 17:45:53 -04:00
Paul Dix 5f0b3b336e refactor: optimizations to make tag set generation significantly faster 2021-09-13 17:45:53 -04:00
Paul Dix 7f915ba9d4 feat: Add pre-generated values and tag sets to data generator
This adds the ability to pre-generate values and tag sets in the data generator. This makes it easy to have tags that depend on other tag values (like buckets in an org) and have tag values that have one associated tag (like if something is in production or staging environment). Follow on work will add the actual generation to the agent spec. An added bonus of these pre-generated values is that generating samples won't require any sort of template evaluation for all of the tags in the tag sets. Only unique values (like trace_id or span_id) would need to be generated during sampling generation.
2021-09-13 17:45:53 -04:00
Paul Dix 64fca1ee34 feat: Support sampling interval strings in data generator
This changes the sampling_interval in the data generator to be a string, supporting things like ns, us, ms, s, m, h and others.
2021-08-25 17:35:01 -04:00
Paul Dix d5f01a2a68 refactor: move data generator to IOx repo and fix build 2021-08-19 14:26:15 -04:00