Skip to content

Support ML module saved objects #148

@jgowdyelastic

Description

@jgowdyelastic

Currently ML modules are stored on disk inside kibana, we would like to move these modules to fleet's integration packages so they can be installed by the user when needed.

The suggested display name for the new asset is ML Module.

The new modules saved object will be almost identical to the current module manifest file, but rather than containing paths to the job and datafeed files, it will contain the actual JSON configs for the jobs and the datafeeds.
Additional kibana saved objects will no longer exist in the module. If we wish to bring over any of the existing dashboards and visualisations from any of the modules, they can be added to the package's assets.

ML's module setup endpoint has already been adjusted to work with this new saved object type as well as the existing modules on disk. elastic/kibana#92855

Below is the suggested mapping definition:

{
  id: {
    type: 'text',
    fields: {
      keyword: {
        type: 'keyword',
      },
    },
  },
  title: {
    type: 'text',
    fields: {
      keyword: {
        type: 'keyword',
      },
    },
  },
  description: {
    type: 'text',
    fields: {
      keyword: {
        type: 'keyword',
      },
    },
  },
  type: {
    type: 'text',
    fields: {
      keyword: {
        type: 'keyword',
      },
    },
  },
  logo: {
    type: 'object',
  },
  defaultIndexPattern: {
    type: 'text',
    fields: {
      keyword: {
        type: 'keyword',
      },
    },
  },
  query: {
    type: 'object',
  },
  jobs: {
    type: 'object',
  },
  datafeeds: {
    type: 'object',
  },
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    discussIssue needs discussion

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions