The fragment/common fragment, defined in the primary schema repository, defines a meta object which it indicates that all schemas should have. There has been persistent confusion about what this object is and is not for. Several subfields of meta are currently populated by eventgate, including:
- meta.stream: The stream to which the event was produced
- meta.id: A unique ID identifying the event
- meta.dt: A timestamp reflecting when the event was received by eventgate
- meta.request_id: A unique ID identifying the request that caused the event
What is the intended scope of meta? Is it acceptable to add additional meta fields for analytics instrumentation — a meta.mediawiki_skin field for analytics "dimensions," for example (T271456)? If so, where should these be added? Do they need to be added in the primary schema repository, or can meta be supplemented from a schema or fragment in the secondary repo?