Skip to main content

Configuring Kibana Settings

1. Setting Default Data View

Setting Description Default Value Notes
defaultDataView Specifies the default data view to load when Kibana starts null Can be set to a data view ID or title
defaultDataView.id ID of the default data view "" Must match an existing data view ID
defaultDataView.title Title of the default data view "" Used if ID is not specified or invalid

Example: Setting Default Data View via kibana.yml

defaultDataView:
  id: "my-data-view-id"
  title: "My Default Data View"
Note: The default data view must exist in Kibana before it can be set as the default.

2. Configuring Time Zone

Setting Value Description
server.timezone UTC Time zone used for date formatting and display in Kibana. Defaults to system time zone.

Example: Setting Time Zone in kibana.yml

server.timezone: "America/New_York"
Note: Time zone values must follow the IANA time zone database format (e.g., America/New_York, Europe/London). Using an invalid time zone will cause Kibana to fall back to UTC.

3. Setting Date Format

Configuration Option Values Description
i18n.dateFormat MM/DD/YYYY Default date format for Kibana UI
i18n.dateFormat DD/MM/YYYY European date format
i18n.dateFormat YYYY-MM-DD ISO 8601 date format

Example: Configure Date Format in kibana.yml

i18n:
  dateFormat: "YYYY-MM-DD"
Note: Changes to kibana.yml require a Kibana restart to take effect.

4. Configuring UI Theme

Setting Description Default Value Notes
kibana.ui.theme Defines the theme for Kibana UI light Available options: light, dark
kibana.ui.theme.custom Custom theme configuration (JSON) {} Allows customization of colors, fonts, etc.

Example: Setting Dark Theme

kibana:
  ui:
    theme: dark
Note: The theme setting is applied at startup and requires a restart to take effect.

5. Setting Default Route

Setting Value Description
defaultRoute /app/kibana Defines the default route when accessing Kibana root URL

Example: Kibana configuration

server:
  defaultRoute: /app/kibana

6. Configuring Query Language

Setting Description Default Value Notes
query.language Defines the default query language for Kibana lucene Can be set to lucene or kuery
query.defaultField Default field to search when no field is specified message Used in Lucene queries
query.kuery.defaultField Default field for KQL queries message Used in Kibana Query Language (KQL)

Example: Setting KQL as Default Language

elasticsearch:
  hosts: [ "localhost:9200" ]
kibana:
  host: "localhost"
  port: 5601
  query:
    language: "kuery"
Note: KQL (Kibana Query Language) is more user-friendly than Lucene syntax and supports complex queries with nested fields.

7. Setting Notification Preferences

Setting Description Default Value Notes
xpack.notification.email.enabled Enables email notifications false Requires email configuration to function
xpack.notification.email.host SMTP server host for email notifications localhost Must be configured for email notifications to work
xpack.notification.email.port SMTP server port for email notifications 25 Common ports: 25, 465, 587
xpack.notification.email.username SMTP username for authentication null Required if SMTP requires authentication
xpack.notification.email.password SMTP password for authentication null Must be encrypted in config file
xpack.notification.email.secure Enables secure (SSL/TLS) connection false Set to true for secure connections

Example: Configure Email Notifications

xpack:
  notification:
    email:
      enabled: true
      host: "smtp.example.com"
      port: 587
      username: "user@example.com"
      password: "secret123"
      secure: true
Note: Email notifications require a valid SMTP server configuration. Ensure that the Kibana server can connect to the specified SMTP host and port.

8. Configuring CSV Export Limits

Setting Default Value Description Notes
csv.max_size 100MB Maximum size of CSV export file Exports larger than this limit will be rejected
csv.max_fields 10000 Maximum number of fields in a CSV row Exceeding this limit may cause performance issues
csv.max_rows 100000 Maximum number of rows in a CSV export Exports with more rows will be truncated or rejected

Example: Kibana CSV Export Configuration

csv:
  max_size: 50MB
  max_fields: 5000
  max_rows: 50000
Note: These limits help prevent excessive resource consumption during CSV exports. Adjust according to your system's capacity and security requirements.

9. Setting Discover Defaults

Setting Description Default Value Notes
discover.defaultColumns Columns displayed by default in Discover ["_source"] Array of field names to display
discover.sampleSize Number of documents to sample for field statistics 500 Higher values provide more accurate stats but slower load times
discover.docTable Configuration for document table display { "highlight": true } Enables syntax highlighting in document view
discover.timefield Default time field used in Discover @timestamp Must be a valid date field in your index pattern

Example: Setting Discover Defaults in kibana.yml

discover:
  defaultColumns:
    - _source
    - @timestamp
  sampleSize: 1000
  docTable:
    highlight: true
  timefield: @timestamp

10. Configuring Accessibility

Setting Description Default Value Notes
elasticsearch.hosts URLs of the Elasticsearch nodes ["http://localhost:9200"] Must be accessible to Kibana server
server.host Host Kibana binds to "localhost" Change for external access
server.port Port Kibana listens on 5601 Ensure it's not blocked by firewall
server.name Name of the Kibana instance "kibana" Used in logs and monitoring
server.basePath Base path for Kibana UI "" Useful for reverse proxy setups
server.rewriteBasePath Whether to rewrite base path in responses false Set to true when using reverse proxy
elasticsearch.username Username for Elasticsearch authentication "" Required if security is enabled
elasticsearch.password Password for Elasticsearch authentication "" Required if security is enabled
elasticsearch.ssl.verificationMode SSL certificate verification mode "full" Set to "none" for testing only
elasticsearch.requestTimeout Timeout for Elasticsearch requests (ms) 30000 Adjust based on network conditions

Example: Basic Kibana Configuration

elasticsearch.hosts: [ "http://localhost:9200" ]
server.host: "0.0.0.0"
server.port: 5601
server.name: "kibana-server"
elasticsearch.username: "kibana_user"
elasticsearch.password: "secure_password"
Note: Ensure that the Kibana user has appropriate permissions in Elasticsearch to access required indices and perform necessary operations.

11. Managing Advanced Settings

Setting Description Default Value Notes
advancedSettings.enabled Enables or disables the advanced settings UI in Kibana. false Requires Kibana restart to take effect.
advancedSettings.allow List of advanced settings that are allowed to be changed. [] Use with caution as it can affect Kibana's stability.
advancedSettings.hide List of advanced settings that are hidden from the UI. [] Useful for preventing users from modifying sensitive settings.

Example: Enabling Advanced Settings

elasticsearch.hosts: [ "localhost:9200" ]
kibana.host: "localhost"
kibana.port: 5601
advancedSettings.enabled: true
Note: Changes to advanced settings are not persisted across Kibana restarts unless explicitly configured in kibana.yml.

12. Setting Up Custom Branding

Example: Kibana branding configuration

server.branding:
  logo:
    default: "https://example.com/logo.png"
    darkMode: "https://example.com/dark-logo.png"
  favicon:
    default: "https://example.com/favicon.ico"
    darkMode: "https://www.example.com/dark-favicon.ico"
  applicationTitle: "My Custom Kibana"
Property Description Default Value Notes
server.branding.logo.default URL to the default logo image None Required for branding
server.branding.logo.darkMode URL to the logo for dark mode None Optional, enhances user experience
server.branding.favicon.default URL to the default favicon None Required for branding
server.branding.favicon.darkMode URL to the favicon for dark mode None Optional, enhances user experience
server.branding.applicationTitle Custom title for the Kibana application Kibana Improves branding clarity
Note: Ensure that all image URLs are accessible and properly formatted to avoid display issues in Kibana.

Was this article helpful?