Druid Skill Monitoring Setup353


Druid is an open-source, distributed time series database that is highly scalable and performant. It is used by many organizations to store and analyze large volumes of time-series data. One of the key features of Druid is its ability to monitor the health and performance of its own system. This is done through the use of Druid skills, which are small programs that can be written to perform specific tasks.

Monitoring Druid Skills

There are a number of different skills that can be used to monitor Druid. These skills can be used to monitor a variety of metrics, including:* The number of active tasks
* The number of failed tasks
* The amount of memory being used
* The amount of CPU being used
* The number of queries per second
* The average query latency

These metrics can be used to identify potential problems with Druid and to ensure that it is performing optimally.

Creating a Druid Skill

To create a Druid skill, you can use the `druid-skill` command. This command will generate a template skill file that you can then edit to define your own monitoring logic. The following is an example of a simple Druid skill that can be used to monitor the number of active tasks:```
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
public class ExampleSkill implements Monitor, ExtensionLoad, ExtensionStartUpHandler {
private static final Logger LOG = new Logger();
private static final BatchLoader BATCH_LOADER = new BatchLoader() {
@Override
public CompletableFuture load(List keys) {
return (());
}
};
@Override
public MonitorSuite getMonitorSuite() {
return (this);
}
@Override
public void load(ExtensionLoadLoadable load) {
// Nothing to do
}
@Override
public void startUp() {
DataLoader dataLoader = (BATCH_LOADER);
FirehoseMonitor firehoseMonitor = new FirehoseMonitor(dataLoader);
StorageMonitor storageMonitor = new StorageMonitor();
(firehoseMonitor, storageMonitor).start();
("Example skill started");
}
}
```

Once you have created a Druid skill, you can use the `druid-cli` command to load it into Druid. The following command will load the example skill into Druid:```
druid-cli load -e =
```

Configuring Druid Skill Monitoring

Once you have loaded a Druid skill into Druid, you can configure it to run at regular intervals. This can be done by setting the `` and `` properties in the Druid configuration file. The following is an example of how to configure Druid to run the example skill every 5 minutes:```
=true
=300000
```

Viewing Druid Skill Metrics

Once you have configured Druid to run a skill, you can view the metrics that it collects in the Druid console. The Druid console is a web-based interface that provides a variety of information about the Druid cluster, including the metrics that are collected by skills. To access the Druid console, open your web browser and navigate to the following URL:```
localhost:8888/
```

Once you have logged into the Druid console, you can click on the "Skills" tab to view the metrics that are collected by skills. The following screenshot shows an example of the Druid console with the metrics that are collected by the example skill:[Image of the Druid console with the metrics that are collected by the example skill]

Conclusion

Druid skills are a powerful tool that can be used to monitor the health and performance of a Druid cluster. By creating and configuring skills, you can ensure that your Druid cluster is running optimally and that you are alerted to any potential problems.

2025-02-24


Previous:Jining Public Transport Monitoring System: A Comprehensive Overview

Next:Video Surveillance Software Installation Guide