The Underlying technology section here says If you are attempting to model a core Mediawiki state change event, consider using Extension:EventBus instead., but am I right in thinking that the EventBus extension is a hard requirement of EventLogging? i.e. EventLogging::submit()
doesn't work without it.
Extension talk:EventLogging/Guide
I'm leaving this breadcrumb rather than editing the page yet, pending my own self-education about meta:Template:SchemaDoc
While looking for a human-readable schema, I found this text:
Schemas represent a new type of MediaWiki content, JSON schema objects, which adhere to the JSON schema specification, version 3.
I don't think this is correct. The schema defining what is a valid eventlogging schema is itself written as a full JSON-schema: https://phabricator.wikimedia.org/diffusion/EEVL/browse/master/schemas/schemaschema.json However, it restricts eventlogging schemas to something which is not JSON-schema, nor even a subset. We need to clarify this for developers, and point to the actual schema or describe it in words.
Heads up, I have cross-referencing this with Wikimedia_Audiences/Better_use_of_data/DACI on my tasklist. @Tbayer (WMF) noted that there are places like the guide here where we ought to ensure appropriate cross-referencing.
That sounds great, @ABaso (WMF)!
One thing you should consider is whether this is a general, non-Wikimedia-specific guide to the EventLogging extension or a Wikimedia-specific guide to our instrumentation infrastructure and processes. In its current form, the page seems to alternate between the two, while wikitech:Analytics/Systems/EventLogging is pretty clear about being the latter.
Clearing up that confusion could be a nice win for better use of data ;)
Yeah, I was indeed mostly thinking about Wikmedia-specific (and in particular WMF Audiences specific) documentation, although I agree that mentioning it here makes sense too.
This guide uses mw.eventLogging.logEvent
instead of mw.track
, like in the Programming documentation. Is there a preferred way of calling the event logging and is there a difference between the two calls? Maybe this in-depth-guide could mention that.