
= Daemons
:description: Learn about the daemon sub-services available in OpenNMS {page-component-title} and how to enable or disable them.

The {page-component-title} service is composed of several daemon "sub-services" that each perform a specific set of tasks.
You can enable and disable them via `$\{OPENNMS_HOME}/etc/service-configuration.xml`.

See xref:operation:deep-dive/admin/configuration/daemon-config-files.adoc[] section for details on sending daemon reload commands.

== List of daemons

[cols="1,2,2"]
|===
| Name | Description | Container Environment variable with defaults

| Ackd
| The acknowledge daemon is responsible for alarm acknowledgement.
| `CORE_SERVICE_ACKD_ENABLED=true`

| Actiond
| Generates Java actions based on received events.
| `CORE_SERVICE_ACTIOND_ENABLED=true`

| Alarmd
| Handles alarm workflows.
| `CORE_SERVICE_ALARMD_ENABLED=true`

| AsteriskGateway
| Communicates with an Asterisk server for VOIP notification.
| `CORE_SERVICE_ASTERISKGATEWAY_ENABLED=false`

| Bsmd
| Processes updates of Business Service Monitoring availability.
| `CORE_SERVICE_BSMD_ENABLED=true`

| Collectd
| Collects data from nodes to persist performance metrics over time.
| `CORE_SERVICE_COLLECTD_ENABLED=true`

| Correlator
| Associates multiple related events.
| `CORE_SERVICE_CORRELATOR_ENABLED=false`

| Discovery
| Provides network discovery functions to scan (either one time only or regularly) for nodes that should be added into the {page-component-title} database.
| `CORE_SERVICE_DISCOVERY_ENABLED=true`

| Enlinkd
| Discovers connections between nodes using data generated by various link discovery protocols.
| `CORE_SERVICE_ENLINKD_ENABLED=true`

| EventTranslator
| The event translator can transform and enhance the data from {page-component-title} events that other daemons generate.
| `CORE_SERVICE_EVENTTRANSLATOR_ENABLED=true`

| Eventd
| Receives and writes event information.
| `CORE_SERVICE_EVENTD_ENABLED=true`

| JettyServer
| The Jetty server provides the {page-component-title} web user interface.
| `CORE_SERVICE_JETTYSERVER_ENABLED=true`

| Karaf
| The Karaf runtime is the framework that maintains all the other daemons running within the {page-component-title} system.
| -

| KarafStartupMonitor
| Used in startup script to detect if Karaf started properly.
| `CORE_SERVICE_KARAFSTARTUPMONITOR_ENABLED=true`

| Notifd
| Sends notifications to other systems based on event UEIs.
| `CORE_SERVICE_NOTIFD_ENABLED=true`

| PassiveStatusd
| The Passive Status Keeper provides a mechanism to generate service outages based on events.
This can be helpful for devices that cannot be directly polled to check service state.
| `CORE_SERVICE_PASSIVESTATUSD_ENABLED=true`

| PerspectivePoller
| Handles Application Perspective Monitoring availability calculations.
| `CORE_SERVICE_PERSPECTIVEPOLLER_ENABLED=true`

| Pollerd
| Responsible for service availability monitoring.
| `CORE_SERVICE_POLLERD_ENABLED=true`

| Provisiond
| Handles the node import and service detection processes.
| `CORE_SERVICE_PROVISIOND_ENABLED=true`

| Queued
| Handles scheduling of tasks to run in the future.
| `CORE_SERVICE_QUEUED_ENABLED=true`

| Reportd
| Generates and schedules reports.
| `CORE_SERVICE_REPORTD_ENABLED=true`

| Rtcd
| Handles uptime percentage calculations.
| `CORE_SERVICE_RTCD_ENABLED=true`

| Scriptd
| Lets you configure Bean Shell script to run in response to events.
| `CORE_SERVICE_SCRIPTD_ENABLED=true`

| SnmpPoller
| Checks SNMP interface admin status.
It is separate from pollerd's SnmpMonitor.
| `CORE_SERVICE_SNMPPOLLER_ENABLED=false`

| Statsd
| Generates statistical reports from node data.
| `CORE_SERVICE_STATSD_ENABLED=true`

| Syslogd
| Allows retrieval and parsing of syslog messages to generate events.
| `CORE_SERVICE_SYSLOGD_ENABLED=false`

| Telemetryd
| Collects sensor data sent from nodes to {page-component-title}.
| `CORE_SERVICE_TELEMETRYD_ENABLED=true`

| Ticketer
| Enables {page-component-title} to create trouble tickets in external systems.
| `CORE_SERVICE_TICKETER_ENABLED=true`

| Tl1d
| Enables reception of TL1 autonomous messages.
| `CORE_SERVICE_TL1D_ENABLED=false`

| Trapd
| Provides an SNMP server that accepts SNMP traps that can be converted to events.
| `CORE_SERVICE_TRAPD_ENABLED=true`

| Vacuumd
| Runs daily cleanup tasks for the PostgreSQL database.
| `CORE_SERVICE_VACUUMD_ENABLED=true`
|===
