Nginx and Azure Data Explorer Integration

Powerful performance with an easy integration, powered by Telegraf, the open source data connector built by InfluxData.

info

This is not the recommended configuration for real-time query at scale. For query and compression optimization, high-speed ingest, and high availability, you may want to consider Nginx and InfluxDB.

5B+

Telegraf downloads

#1

Time series database
Source: DB Engines

1B+

Downloads of InfluxDB

2,800+

Contributors

Table of Contents

Powerful Performance, Limitless Scale

Collect, organize, and act on massive volumes of high-velocity data. Any data is more valuable when you think of it as time series data. with InfluxDB, the #1 time series platform built to scale with Telegraf.

See Ways to Get Started

Input and output integration overview

The Nginx plugin for Telegraf is designed to collect status metrics from Nginx web servers, providing real-time insights into server operation metrics.

The Azure Data Explorer plugin allows integration of metrics collection with Azure Data Explorer, enabling users to analyze and query their telemetry data efficiently. With this plugin, users can configure ingestion settings to suit their needs and leverage Azure’s powerful analytical capabilities.

Integration details

Nginx

This plugin gathers status metrics from Nginx. It utilizes the ngx_http_stub_status_module to collect basic metrics related to the server’s performance. The plugin provides valuable insights into active connections, requests handled, and the current state of various metrics. This real-time data is essential for monitoring web server performance and ensuring optimal operations. The configuration allows users to specify the URL for the Nginx status endpoint, set timeouts, and configure TLS settings if necessary.

Azure Data Explorer

The Azure Data Explorer plugin allows users to write metrics, logs, and time series data collected from various Telegraf input plugins into Azure Data Explorer, Azure Synapse, and Real-Time Analytics in Fabric. This integration serves as a bridge, allowing applications and services to monitor their performance metrics or logs efficiently. Azure Data Explorer is optimized for analytics over large volumes of diverse data types, making it an excellent choice for real-time analytics and monitoring solutions in cloud environments. The plugin empowers users to configure metrics ingestion based on their requirements, define table schemas dynamically, and set various ingestion methods while retaining flexibility regarding roles and permissions needed for database operations. This supports scalable and secure monitoring setups for modern applications that utilize cloud services.

Configuration

Nginx

[[inputs.nginx]]
  ## An array of Nginx stub_status URI to gather stats.
  urls = ["http://localhost/server_status"]

  ## Optional TLS Config
  # tls_ca = "/etc/telegraf/ca.pem"
  # tls_cert = "/etc/telegraf/cert.pem"
  # tls_key = "/etc/telegraf/key.pem"
  ## Use TLS but skip chain & host verification
  # insecure_skip_verify = false

  ## HTTP response timeout (default: 5s)
  response_timeout = "5s"

Azure Data Explorer

[[outputs.azure_data_explorer]]
  ## The URI property of the Azure Data Explorer resource on Azure
  ## ex: endpoint_url = https://myadxresource.australiasoutheast.kusto.windows.net
  endpoint_url = ""

  ## The Azure Data Explorer database that the metrics will be ingested into.
  ## The plugin will NOT generate this database automatically, it's expected that this database already exists before ingestion.
  ## ex: "exampledatabase"
  database = ""

  ## Timeout for Azure Data Explorer operations
  # timeout = "20s"

  ## Type of metrics grouping used when pushing to Azure Data Explorer.
  ## Default is "TablePerMetric" for one table per different metric.
  ## For more information, please check the plugin README.
  # metrics_grouping_type = "TablePerMetric"

  ## Name of the single table to store all the metrics (Only needed if metrics_grouping_type is "SingleTable").
  # table_name = ""

  ## Creates tables and relevant mapping if set to true(default).
  ## Skips table and mapping creation if set to false, this is useful for running Telegraf with the lowest possible permissions i.e. table ingestor role.
  # create_tables = true

  ##  Ingestion method to use.
  ##  Available options are
  ##    - managed  --  streaming ingestion with fallback to batched ingestion or the "queued" method below
  ##    - queued   --  queue up metrics data and process sequentially
  # ingestion_type = "queued"

Input and output integration examples

Nginx

  1. Web Performance Monitoring: Use the Nginx plugin to gather performance metrics from various Nginx servers across your infrastructure. By visualizing these metrics in real-time dashboards, teams can track performance trends, identify bottlenecks, and enhance the user experience on their web applications. Implementing such monitoring allows businesses to proactively address performance issues before they impact end-users.

  2. Load Balancer Monitoring: Integrate this plugin with your load balancers to track the performance of backend Nginx servers. By collecting statistics like ‘active connections’ and ‘requests handled’, your operations team can ensure that traffic is flowing optimally and that no single server is overwhelmed. This proactive approach to load balancing prevents service downtime and enhances user experience.

  3. Automated Alerting Systems: Combine the Nginx plugin with alerting services to automatically notify your team when a server’s metrics exceed predefined thresholds. For instance, if the number of active connections is too high, the system can trigger alerts so that corrective actions can be taken immediately, thus maintaining service quality and reliability.

  4. Historical Data Analysis: Store the metrics collected by the Nginx plugin in a time-series database to analyze historical performance trends. This analysis can uncover periods of high traffic or poor performance, allowing for data-driven decisions about infrastructure scaling and optimization. By understanding past trends, organizations can better prepare for future demands.

Azure Data Explorer

  1. Real-Time Monitoring Dashboard: By integrating metrics from various services into Azure Data Explorer using this plugin, organizations can build comprehensive dashboards that reflect real-time performance metrics. This allows teams to respond proactively to performance issues and optimize system health without delay.

  2. Centralized Log Management: Utilize Azure Data Explorer to consolidate logs from multiple applications and services. By utilizing the plugin, organizations can streamline their log analysis processes, making it easier to search, filter, and derive insights from historical data accumulated over time.

  3. Data-Driven Alerting Systems: Enhance monitoring capabilities by configuring alerts based on metrics sent via this plugin. Organizations can set thresholds and automate incident responses, significantly reducing downtime and improving the reliability of critical operations.

  4. Machine Learning Model Training: By leveraging the data sent to Azure Data Explorer, organizations can perform large-scale analytics and prepare the data for feeding into machine learning models. This plugin enables the structuring of data that can subsequently be used for predictive analytics, leading to enhanced decision-making capabilities.

Feedback

Thank you for being part of our community! If you have any general feedback or found any bugs on these pages, we welcome and encourage your input. Please submit your feedback in the InfluxDB community Slack.

Powerful Performance, Limitless Scale

Collect, organize, and act on massive volumes of high-velocity data. Any data is more valuable when you think of it as time series data. with InfluxDB, the #1 time series platform built to scale with Telegraf.

See Ways to Get Started

Related Integrations

HTTP and InfluxDB Integration

The HTTP plugin collects metrics from one or more HTTP(S) endpoints. It supports various authentication methods and configuration options for data formats.

View Integration

Kafka and InfluxDB Integration

This plugin reads messages from Kafka and allows the creation of metrics based on those messages. It supports various configurations including different Kafka settings and message processing options.

View Integration

Kinesis and InfluxDB Integration

The Kinesis plugin allows for reading metrics from AWS Kinesis streams. It supports multiple input data formats and offers checkpointing features with DynamoDB for reliable message processing.

View Integration