Xitoring Document
Home
FAQ
Support
Register
Home
FAQ
Support
Register
  • Xitoring

    • Introduction
    • Release Notes
    • Xitoring Release Notes
    • Linux Xitogent Release Notes
    • Windows Xitogent Release Notes
    • Xitoring Mobile App Release Notes
    • Account Management
    • API Access & Automation
    • Team Management & Collaboration
    • Billing & Subscription Management
  • Getting Started

    • Getting Started with Xitoring
    • Workflows & Guides
    • Monitor Your First Server
    • Import / Migration
    • Migrate from UptimeRobot to Xitoring
    • Migrate from Pingdom to Xitoring
    • Migrate from Uptime.com to Xitoring
    • Migrate from BetterStack to Xitoring
  • Help & Support

    • FAQ & Troubleshooting
    • Glossary
  • Server Monitoring

    • Server Monitoring
    • Graphs
    • Live Statistics
    • Monitor Services
    • Auto-Triggers
  • Xitogent on Linux

    • Install Xitogent on Linux
    • Update Xitogent on Linux
    • Uninstall Xitogent on Linux
  • Xitogent on Windows

    • Install Xitogent on Windows
    • Uninstall Xitogent on Windows
    • Xitogent Service
    • Update Xitogent on Windows
    • Disk Performance (I/O)
  • Xitogent on Azure

    • Xitogent on Azure
    • Monitor Azure Linux VM
    • Monitor Azure Windows VM
  • Xitogent CLI

    • Xitogent CLI
    • Xitogent Pause/Unpause
    • Xitogent Status
    • Xitogent debug
    • Xitogent Diagnosis
    • Which data we collect
  • Xitoring CLI

    • Xitoring CLI
  • Uptime Monitoring

    • What is Uptime Monitoring
    • Monitoring Nodes (Geographic Locations)
    • What is Check
    • Auto-Discovery
    • Auto Fault Tolerance
    • Heartbeat Check
    • Ping Check
    • HTTP(S) Check
    • DNS Check
    • FTP Check
    • SMTP Check
    • IMAP Check
    • POP3 Check
    • TCP Check
    • UDP Check
  • SSL Monitoring

    • SSL Monitoring
  • Incidents

    • Incidents
    • Incident's Root Cause
    • Incidents Notification
    • Incident Notes
    • Resolving Incidents Manually
    • Incident Policy
  • Maintenance Schedule

    • Maintenance Schedule
  • Email Reports

    • Email Reports
  • Integrations

    • Integrations
    • Apache Integration
    • CoreDNS Integration
    • CouchDB Integration
    • Disk Health Integration
    • Docker Integration
    • Dovecot Integration
    • Exim Integration
    • HAProxy Integration
    • IIS Integration
    • InfluxDB Integration
    • Kafka Integration
    • KeyDB Integration
    • LiteSpeed Integration
    • MongoDB Integration
    • MySQL Integration
    • Netstat Integration
    • Nginx Integration
    • OpenLiteSpeed Integration
    • OpenVPN Integration
    • PHP-FPM Integration
    • Postfix Integration
    • PostgreSQL Integration
    • RabbitMQ integration
    • Redis Integration
    • MS SQL Server Integration
    • Supervisor Integration
    • Varnish Integration
    • Wireguard Integration
  • Notifications

    • Notifications
    • Creating Notification Roles
    • Email Integration
    • Mobile Push Notifications
    • SMS Integration
    • Phone call Integration
    • Webhook Integration
    • Integration for Slack
    • Telegram Integration
    • WhatsApp Integration
    • Mattermost Integration
    • Discord Integration
    • Google Chat Integration
    • Microsoft Teams Integration
    • Atlassian Opsgenie Integration
    • Splunk On-Call Integration
    • Pushover Integration
    • Pushbullet Integration
    • Gotify Integration
    • Ntfy Integration
    • Spike.sh Integration
    • PagerDuty Integration
    • Zapier Integration
    • AlertOps Integration
  • Status Page

    • Status page
  • 3rd Party Status Pages

    • Using 3rd party Status Pages
    • Atlassian Status Page Integration with Xitoring
    • Status.io Integration with Xitoring
    • Statuspal Integration with Xitoring
    • Instatus Integration with Xitoring
  • Dashboards

    • Main Dashboard
    • Custom Dashboards
  • Metrics

    • Metrics
  • MCP Server

    • Setup & Tool Reference

Nginx Integration

If you are running Nginx as your web server on any environment you need to keep track of how Nginx is working on your server. so we Xitoring added this feature so with a few easy steps you can have very useful and important statistics in the Xitoring app.

Supported platforms

The following guide is working on Linux and Windows servers but some details could be quite different based on the OS version.

Configuring Nginx

The first step you need to make sure that your Nginx has the stub_status_module available. with the following command, you can be sure easily:

On Linux

nginx -V 2>&1| grep -o http_stub_status_module

The output should look like the following:

http_stub_status_module

On Windows

Navigate to the directory where Nginx is installed. This is typically C:\nginx. Run the following command to check if stub_status_module is available in Nginx:

nginx -V 2>&1| findstr /C:"http_stub_status_module"

The output should look like the following:

http_stub_status_module

Nginx Config file

After you make sure that you have stub_status_module available, you have to add the following configuration to your Nginx server block as a location so the statistics will serve somewhere so Xitogent can collect them:

location /nginx-status {
stub_status;
access_log off;
server_tokens on;
allow 127.0.0.1;
deny all;
}

With this configuration Nginx will serve the statistics on http://127.0.0.1/nginx-status only on localhost it will not expose the statistics on the internet.

Enable Nginx integration on Xitogent

Now that we get passed the hard part we just need to tell Xitogent to collect Nginx statistics and send them, it's a very easy duo to the Xitogent CLI easy integration setup.

You just need to execute the following command:

xitogent integrate

You will see something like below:

1) Mysql
2) Nginx
3) Apache
4) Supervisor
5) Php-fpm
6) Redis
7) Keydb

You will select Nginx which is number 2 from the list of available integrations and Xitogent CLI will prompt you for:

enter nginx status page URL (e.g. http://127.0.0.1:80/status): 

Now you just have to enter the address on which your Nginx status is being served. in our example, it is:

http://127.0.0.1/nginx-status

If you have done everything right you will see the following output:

connection established
integration setup was successful and the config file updated

Now the configuration file is created in the /etc/xitogent/integrations/nginx_integration.conf and the content of the config file is something like the below:

uri=http://127.0.0.1/nginx-status

Setup Triggers for Nginx integration

You can create triggers for the following parameters so you get incidents if any of the parameters exceed or go less than a specific value:

Active
Accepted
Handled
Reading
Writing
Waiting
Requests
Last Updated: 4/12/23, 8:04 PM
Prev
Netstat Integration
Next
OpenLiteSpeed Integration