Adding management plugin

(Eric) #1

I'm trying to add a section to the management landing page. Similar to how xpack adds sections there with there own configuration pages. I could not find any documentation or examples of there. Something similar to the highlighted section below.

Is there somewhere I can read up on this and figure out how to do this?

I have seen which states

This section is pluginable, so in addition to the out of the box capabitilies, packs such as X-Pack can add additional management capabilities to Kibana.

Plugin management setting missing CSS styling
(Lukas Olson) #2

We make no guarantees on this plugin API, but here's how you can currently do it:

In your plugin's index.js, under uiExports, add the following:

uiExports: {
  managementSections: ['path/to/your/file']

Then inside this file, do something like the following:

import { management } from 'ui/management';
import routes from 'ui/routes';

  .register('subsection', {
    display: 'SubSection',
    order: 5,
    url: '#/management/section/subsection/'

routes.when('/management/section/subsection', {
  controller: function () {
    // ...

Let me know if that works!

(Eric) #3

Looks like that is how it should be done, but it looks like the section isn't getting created with management.getSection

I'm getting an error in the browser of Error: Uncaught TypeError: Cannot read property 'register' of undefined

(Eric) #4

Okay, ended up getting it to work by adding:

management.register('section', {
  display: 'Section',
  order: 40

prior to attempting to register the subsection

(Eric) #5

What about adding the icon to the heading. I have tried passing in an icon when registering the management section but nothing ever displays there.

management.register('section', {
  display: 'Section',
  order: 40,
  icon: 'plugins/plugin/assets/section_icon.svg'

(Eric) #6

So ended up drilling down enough to figure out that it was set dynamically for the service in less.

so I added a less file with

.management-panel__heading-icon--section {
  background-image: url("~plugins/plugin/assets/section_icon.svg");

where section is what was registered to management.

(system) #7

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.