0.1.1 • Published 5 years ago
kibana-generic-visualization v0.1.1
❯ Why
Generate kibana visualizations and dashboards dynamically.
❯ Table of Contents
❯ Quick Start
Installation
Install library by using npm
npm install kibana-generic-visualization
or by using yarn
yarn add kibana-generic-visualization
How to use
Step 1: Import KibanaGenericVisualization
Using CommonJS
module loader:
const { KibanaGenericVisualization } = require('kibana-generic-visualization');
Using ES6
module loader:
import { KibanaGenericVisualization } from 'kibana-generic-visualization';
Step 2: Create new instance of KibanaGenericVisualization
Create new instance of KibanaGenericVisualization
and provide config (about config have a look at API section):
const options = {
kibanaVersion: '6.3.2',
api: {
host: 'https://api-eu.logz.io/v1',
token: 'your-kibana-api-secret-token',
},
};
const kibanaGenericVisualization = new KibanaGenericVisualization(options);
Step 3: Create visualizations and dashboard
Create visualizations for each service instance and combine them in a dashboard.
const serviceNames {
'my-first-redis-service',
'my-second-redis-service',
};
const metrics = [
{ fieldName: 'metrics.mem_fragmentation_ratio', customLabel: 'Memory Fragmentation Ratio' },
{ fieldName: 'metrics.evicted_keys', customLabel: 'Removed Keys' },
];
const redisVisualizationIds = await kibanaGenericVisualization.createVisualizations(
'line', // visualization type
serviceNames, // service names array
serviceName => `Redis ${serviceName} Metric`, // generic visualization name
metrics, // log attributes to display
'my-saved-search-id' // saved search id
);
const dashboardGridOptions = {
width: 24,
height: 15,
maxWidth: 48,
};
kibanaGenericVisualization.createDashboard('Redis Dashboard', redisVisualizationIds.created, dashboardGridOptions);
API
Options
Option | Description |
---|---|
kibanaVersion | Version of Kibana |
api.host | Kibana API endpoint host |
api.token | Kibana API endpoint token |
Methods
Method | Description |
---|---|
createVisualizations(stateType, serviceNames, title, fields, savedSearchId) | Create kibana visualizations |
createDashboard(title, visualizationIds, dashboardGridConfig) | Create kibana dashboard |
getKibanaObjectsByType(objectType) | Get objects from kibana by object type |