Skip to main content

Overview

Wazuh Dashboard Plugins organize security data into specialized index patterns optimized for different types of events and states. This structured approach enables efficient querying, visualization, and analysis of security telemetry.

Index Pattern Architecture

Data is organized into three primary categories:

Events

Real-time security events with timestamps, categorized by event type

States

Current state snapshots of system inventories, vulnerabilities, and configurations

Operational

Monitoring data and statistics for agents and servers

Index Pattern Types

From constants.ts:19-108:

Events Index Patterns

Events represent time-series security data with the @timestamp field.
Pattern: wazuh-events*
Type: events
Time Field: @timestamp
Health Check: index-pattern:events
The main index pattern that aggregates all event types. Used for cross-category searches and general event exploration.
Required Fields:

Cloud Services Events

Specialized event patterns for cloud provider monitoring:
Pattern: wazuh-events-v5-cloud-services*
Health Check: index-pattern:events-cloud-services
Aggregated cloud service events across all providers.Known Fields: common/known-fields/events-cloud-services.json
Pattern: wazuh-events-v5-cloud-services-aws*
Health Check: index-pattern:events-cloud-services-aws
Amazon Web Services specific events:
  • CloudTrail API calls
  • GuardDuty findings
  • Config changes
  • VPC Flow Logs
Known Fields: common/known-fields/events-cloud-services-aws.json
Pattern: wazuh-events-v5-cloud-services-azure*
Health Check: index-pattern:events-cloud-services-azure
Microsoft Azure events:
  • Azure AD logs
  • Activity logs
  • Security Center alerts
Known Fields: common/known-fields/events-cloud-services-azure.json
Pattern: wazuh-events-v5-cloud-services-gcp*
Health Check: index-pattern:events-cloud-services-gcp
Google Cloud Platform events:
  • Cloud Audit Logs
  • Security Command Center
  • IAM policy changes
Known Fields: common/known-fields/events-cloud-services-gcp.json

States Index Patterns

States represent current snapshots of system configurations and inventories (no time field).
Pattern: wazuh-states-vulnerabilities*
Type: states-vulnerabilities
Health Check: index-pattern:states-vulnerabilities
Current vulnerability state of systems:
  • Detected CVEs
  • Affected packages
  • Severity scores (CVSS)
  • Fix availability
Known Fields: common/known-fields/states-vulnerabilities.json

Operational Index Patterns

Pattern: wazuh-monitoring*
Type: monitoring
Time Field: timestamp
Health Check: index-pattern:monitoring
Agent status and metrics:
  • Agent connectivity status
  • Last keep-alive timestamp
  • Agent version information
  • Configuration sync status
Known Fields: common/known-fields/monitoring.json

Index Pattern Initialization

The server plugin registers health checks to ensure all index patterns exist during startup.

Health Check Registration

From plugins/main/server/plugin.ts:

Index Pattern Options

string
required
Unique identifier for the health check task
string
required
The index pattern string (e.g., wazuh-events*)
object
Saved object properties to set/override
boolean
default:"false"
Whether the index pattern has a time field
array
Known field definitions when indices don’t exist yet
boolean
default:"false"
Whether this should be the default index pattern

Known Fields

Known fields are pre-defined field mappings stored in JSON files under common/known-fields/. These allow index patterns to be created before any data is indexed. Example: common/known-fields/events.json

Data Flow

Event Pipeline

1

Agent Collection

Wazuh agents collect security events and system state data
2

Manager Processing

Wazuh Manager processes, enriches, and categorizes events
3

Indexing

Events are indexed into OpenSearch with appropriate index patterns
4

Index Pattern Matching

Dashboard queries use index patterns to search relevant indices
5

Visualization

Results are rendered in dashboards and visualizations

Index Naming Convention

Components:
  • wazuh: Namespace prefix
  • {category}: events, states, monitoring, statistics
  • {version}: v5 (for events)
  • {subcategory}: security, system-activity, vulnerabilities, etc.
  • {date}: YYYY.MM.DD for daily indices

Sample Data

The plugin provides sample data generation for testing and demonstrations.

Sample Data Categories

From constants.ts:271-475:
Available Categories:
  • Agent Monitoring
  • Security Alerts
  • Auditing & Policy Monitoring
  • Threat Detection
  • File Integrity Monitoring
  • Security Configuration Assessment
  • Inventory Agent
  • Server Statistics
  • Vulnerabilities

Sample Data Configuration

number
default:"1500"
Default number of sample documents to generate

Query Optimization

Time-Based Filtering

For event index patterns, always apply time range filters:

Agent Filtering

Filter by specific agent:

Cluster Mode Filtering

For vulnerabilities in cluster mode:

Field Formats

Specialized field formatting improves data presentation:

Byte Formatting

Percentage Formatting

Integer Formatting

Index Lifecycle Management

Index patterns use wildcard matching, allowing for index rotation and lifecycle policies without reconfiguration.
Example: Index pattern wazuh-events* matches:
  • wazuh-events-v5-security-2026.03.01
  • wazuh-events-v5-security-2026.03.02
  • wazuh-events-v5-security-2026.03.03
  • wazuh-events-v5-security-2026.03.04
This enables:
  • Daily index rotation
  • Automated retention policies
  • Hot-warm-cold architecture
  • Index deletion without breaking dashboards

Configuration

Default Index Pattern

Set the default index pattern for initial searches:
The events index pattern (wazuh-events*) is typically set as default.

Time Field Configuration

For time-series data:

Time Filter Settings

Default time range for dashboards:

Best Practices

Use Specific Patterns

Query the most specific index pattern for your use case (e.g., wazuh-events-v5-security* instead of wazuh-events*) for better performance

Apply Time Filters

Always filter by time range on event indices to limit data scanned

Filter Early

Apply agent, cluster, and category filters in the query for index-level filtering

Aggregate Wisely

Use appropriate aggregation intervals and bucket limits

Index Pattern Reference

Complete Index Pattern List

  • wazuh-events*
  • wazuh-events-v5-system-activity*
  • wazuh-events-v5-security*
  • wazuh-events-v5-access-management*
  • wazuh-events-v5-applications*
  • wazuh-events-v5-network-activity*
  • wazuh-events-v5-other*
  • wazuh-events-v5-cloud-services*
  • wazuh-events-v5-cloud-services-aws*
  • wazuh-events-v5-cloud-services-azure*
  • wazuh-events-v5-cloud-services-gcp*
  • wazuh-states-vulnerabilities*
  • wazuh-states-fim*
  • wazuh-states-fim-files*
  • wazuh-states-fim-registry-keys*
  • wazuh-states-fim-registry-values*
  • wazuh-states-sca*
  • wazuh-states-inventory*
  • wazuh-states-inventory-system*
  • wazuh-states-inventory-hardware*
  • wazuh-states-inventory-networks*
  • wazuh-states-inventory-packages*
  • wazuh-states-inventory-ports*
  • wazuh-states-inventory-processes*
  • wazuh-states-inventory-protocols*
  • wazuh-states-inventory-users*
  • wazuh-states-inventory-groups*
  • wazuh-states-inventory-services*
  • wazuh-states-inventory-interfaces*
  • wazuh-states-inventory-hotfixes*
  • wazuh-states-inventory-browser-extensions*
  • wazuh-monitoring*
  • wazuh-statistics*

Architecture

System architecture and data flow

Security Modules

Security modules that use these data sources

Plugin System

Plugin lifecycle and health checks

Query Guide

Learn how to query and visualize data