elastic / kibana

Your window into the Elastic Stack
https://www.elastic.co/products/kibana
Other
19.71k stars 8.13k forks source link

[Infra] Add telemetry to anomaly job creation #189619

Open roshan-elastic opened 1 month ago

roshan-elastic commented 1 month ago

Description

In order to understand usage of anomaly detection better, we want to add telemetry to understand what settings users are using in their jobs:

image

💡 Solution Proposal

We fire an custom event upon a job being successfully created to the telemetry cluster to capture this:

{
  "event_type":"anomaly job created",
  "context":{...}
  "properties": {
    "job_type":"host",
    "configured_fields":["date_field_name","partition_field_name","filter_field_name"] // any field that has been modified by the user
  }  
}

We also add unique data-test-subj attributes to the HTML elements (buttons and form fields) for the configuration options that will allow us to understand clicks on the different elements and also differentiate between job names.

✔️ Acceptance criteria

Name Description
We capture when AD jobs are set up -
We capture what type of job it was e.g. Hosts or Kubernetes
We what settings were set by the user e.g. date change, filtering, partitioning
We understand clicks on the different configuration options in AD creation workflow e.g. clicking on date change, filtering, partitioning etc
elasticmachine commented 1 month ago

Pinging @elastic/obs-ux-infra_services-team (Team:obs-ux-infra_services)

roshan-elastic commented 1 month ago

Hey @arisonl - do you think any of the requirements here could be met in the backend for the telemetry you already collect for AD jobs?

smith commented 3 weeks ago

Deprioritizing this for now.

roshan-elastic commented 3 weeks ago

Hey @smith - I had a quick chat with Carlos and he said this isn't much work.

Putting this on the maintenance backlog so we can learn a bit more about how users are interacting with the anomaly detection today.

Let me know if you think it isn't suitable

peteharverson commented 3 weeks ago

@roshan-elastic to answer your question

do you think any of the requirements here could be met in the backend for the telemetry you already collect for AD jobs?

We don't collect any details on the job configurations from the ML side, only higher level metrics on things like counts of jobs created / opened, numbers of detectors. I'd recommend you go ahead and add the specific telemetry you're interested in (use of partition field, filter and time range) on your side.