Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Kibana Plugin Development - Vlad Bolibruk

Kibana Plugin Development - Vlad Bolibruk

Kibana Plugin Development (React, ChartJS, Typescript).

GDG Cherkasy

February 15, 2019
Tweet

More Decks by GDG Cherkasy

Other Decks in Technology

Transcript

  1. Elasticsearch » Lucene lib » Reverse index » The value

    is stored and the document in which this value is found 5
  2. 6

  3. 7

  4. Kibana 8 » Angular 1.X , React, Jquery , etc

    => node_modules = 1.0G » Vega vis based on D3 » Powerful search » Time query » Bar, line, pie charts, metric visualisation and many others.
  5. 9

  6. 10

  7. 11

  8. 12

  9. 14 Project structure » Kibana src as git submodule »

    Kibana-extra as folder for plugins » Shared folder for interfaces and reusable code
  10. 15 » Shared folder as symlink » Editors for plugin

    params » Plugin is generated with node scripts/generate_plugin my_plugin_name
  11. OUR PROCESS IS EASY Determine base plugin Do you need

    additional ES request? Parse object 16 Create React view
  12. 18

  13. 24 Deploy with Jenkins » “yarn build” at kibana folder

    optional » “yarn build” each plugin » Copy plugin to the /kibana/plugins/ » rsync changes to server and restart kibana
  14. 25 Issues » Nivo charts are not customizable enough Tooltips,

    colors, boarders, closed complex code, svg charts. » Custom request handler is complicated » Kibana was failing to build, node error » ChartJS » Copy request handler from kibana folder and add some code » export NODE_OPTIONS=--max_old_space_size=4096 Solutions
  15. 3 developers 2 front-end , 1 nodejs 1 month With

    everyday sync 26 10 minutes For plugin build on stage 30 minutes For full kibana build on stage Facts in numbers
  16. 29

  17. 30

  18. 31

  19. THANKS! Any questions? You can find me at » [email protected]

    » Linkedin qr code 32 «Пойми, сейчас на проекте только и разговоров, что о Kibana и Elasticsearch. О том, как это чертовски здорово — наблюдать, как огромный текстовый лог превращается в красивые графики, а еле видимая нагрузка на CPU горит где-то в глубине top-а. А ты?.. Что ты им скажешь?»