EndPoint Sentinel User Guide

Complete documentation for monitoring your websites, servers, and online services. This guide will help you get the most out of your EndPoint Sentinel system.

EndPoint Sentinel Dashboard

Getting Started

What is EndPoint Sentinel?

EndPoint Sentinel is a professional web application that helps you monitor the availability and performance of your websites, servers, and online services.

Website Monitoring

Monitor HTTP/HTTPS websites for availability and response times

Server Monitoring

Check TCP ports, ping servers, and monitor SSL certificates

Instant Alerts

Get email notifications when services go down or recover

Performance Analytics

Track uptime statistics and response time trends

System Requirements

Important: Make sure your server meets these requirements before installation.
Server Requirements
  • PHP 7.4 or newer
  • MySQL 5.7+ or MariaDB 10.2+
  • Apache 2.4+ or Nginx 1.16+
  • 50MB disk space minimum
  • 128MB memory minimum
PHP Extensions Required
  • cURL (for HTTP monitoring)
  • PDO (database connection)
  • OpenSSL (SSL certificate checks)
  • JSON (data processing)
  • Cron jobs (automated monitoring)

Installation Process

Follow these simple steps to install EndPoint Sentinel on your server:

1
Upload Files

Extract the ZIP file and upload all contents to your web server directory (e.g., public_html, www, or htdocs).

Tip: Use FTP, SFTP, or your hosting control panel's file manager.
2
Run Installation

Open your web browser and navigate to:

http://yourdomain.com/install.php

The installer will guide you through the setup process.

3
Database Configuration

Enter your database details when prompted:

  • Database Host: Usually "localhost"
  • Database Name: Your MySQL database name
  • Username & Password: Database credentials
4
Create Admin Account

Set up your administrator account with a strong password.

Security: Use a strong password with letters, numbers, and symbols.
5
Setup Cron Job

Add this cron job to enable automatic monitoring:

* * * * * cd /path/to/your/site && php cron.php

This runs monitoring checks every minute.

User Guide

First Login

After installation, access your EndPoint Sentinel at:

http://yourdomain.com/login.php

Use the administrator credentials you created during installation.

Default Login: Use the username and password you set during installation.
Login Screen

Dashboard Overview

The main dashboard provides a complete overview of your monitoring setup:

Statistics Panel
  • Total monitors count
  • Online/Offline status
  • Overall uptime percentage
  • Average response time
Monitors List
  • Service names and URLs
  • Current status indicators
  • Last check timestamp
  • Quick action buttons
Main Dashboard Overview

Adding New Monitors

To start monitoring a new service, click the "Add New Monitor" button and fill out the form:

Monitor Configuration Fields
Basic Information
Endpoint Name *: A friendly name to identify the monitoring endpoint (e.g., "Main Website", "Server Ping", "SSL Check")
Target URL/IP/Domain *: URL, IP address, or domain name to monitor (e.g., https://example.com, 192.168.1.1, example.com)
Monitor Type *: Choose monitoring method:
  • 🌐 HTTP Website - Monitor web applications
  • 🔒 HTTPS Website - Monitor secure websites
  • 📡 IP Ping - Basic network connectivity
  • 🔌 TCP Port - Check specific service ports
Enable Monitoring: Check to start monitoring immediately, or uncheck to add endpoint without starting monitoring
Common Settings
Check Interval: How often to perform checks:
  • 1 minute - High frequency monitoring
  • 5 minutes - Default balanced interval
  • 10 minutes - Standard monitoring
  • 30 minutes - Low frequency monitoring
  • 1 hour - Minimal monitoring
Timeout (seconds): Maximum time to wait for response (5-120 seconds, default: 30)
HTTP/HTTPS Monitoring Options
HTTP Method: Request method to use:
  • GET - Full page request (default)
  • HEAD - Headers only (faster)
  • POST - Send data to endpoint
Expected HTTP Code: Expected response status code (100-599, default: 200)
SSL Certificate Monitoring: Also monitor SSL certificate expiration and validity
SSL Certificate Monitoring Options
Warning Days Before Expiry: Alert when certificate expires within this many days (1-365, default: 30)
Ping Monitoring Options
Number of Packets: Packets to send per check:
  • 1 packet - Quick check
  • 4 packets - Standard (default)
  • 8 packets - More accurate
  • 10 packets - High precision
TCP Port Monitoring Options
Port Number *: TCP port number to check (1-65535, e.g., 80, 443, 22, 3306)
Best Practice: Start with a 5-minute check interval and adjust based on your needs.

Types of Monitoring

HTTP/HTTPS Monitoring

Best for: Websites, web applications, APIs

What it checks:

  • Website accessibility
  • Response time
  • HTTP status codes
  • Page content verification
  • SSL certificate validity
Example: https://www.yoursite.com
TCP Port Monitoring

Best for: Email servers, databases, FTP, SSH

Common ports:

  • 22 - SSH
  • 80 - HTTP
  • 443 - HTTPS
  • 3306 - MySQL
  • 21 - FTP
Example: 192.168.1.100:3306
Ping Monitoring

Best for: Basic connectivity testing

What it checks:

  • Network connectivity
  • Response time (latency)
  • Packet loss
Example: 8.8.8.8 (Google DNS)
SSL Certificate Monitoring

Best for: HTTPS websites and secure services

What it monitors:

  • Certificate expiration date
  • Certificate validity
  • Chain verification
Get alerts before certificates expire!

Email Notifications Setup

Configure email alerts to stay informed about your services status:

Email Settings (in Settings > Email Configuration)
SMTP Host: Your email server address (e.g., smtp.gmail.com)
SMTP Port: Email server port (587 for TLS, 465 for SSL, 25 for standard)
Username: Your email account username
Password: Your email account password (or app password)
From Email: The sender email address for notifications
From Name: The sender name (e.g., "EndPoint Sentinel")
To Email: Your email address to receive notifications
Encryption: Choose TLS, SSL, or None
When You'll Get Notifications
  • Service goes offline
  • Service comes back online
  • SSL certificate expires soon
  • Response time threshold exceeded
Popular SMTP Settings

Gmail: smtp.gmail.com:587 (TLS)

Outlook: smtp.live.com:587 (TLS)

Yahoo: smtp.mail.yahoo.com:587 (TLS)

System Settings

Access the Settings panel to configure your EndPoint Sentinel:

General Settings
Site Title: Name displayed in the interface
Timezone: Your local timezone for accurate timestamps
Date Format: How dates are displayed
Records per Page: Number of items shown in lists
Monitoring Settings
Default Check Interval: Standard monitoring frequency
Default Timeout: Maximum wait time for responses
Log Retention: How long to keep monitoring logs
SSL Warning Days: Days before certificate expiry to alert

Advanced Features

API Usage

EndPoint Sentinel includes a REST API for integration with other systems:

API Key Setup
  1. Go to Settings > API Settings
  2. Click "Generate API Key"
  3. Copy and save your API key securely
  4. Use the key in the X-API-Key header
Common API Endpoints
GET /api.php?action=list_monitors GET /api.php?action=monitor_status&id=1 POST /api.php?action=add_monitor PUT /api.php?action=update_monitor&id=1 DELETE /api.php?action=delete_monitor&id=1
Example Usage
curl -H "X-API-Key: your-api-key" \ -H "Content-Type: application/json" \ http://yoursite.com/api.php?action=list_monitors

System Maintenance

Keep your EndPoint Sentinel running smoothly with regular maintenance:

Daily Tasks
  • Check dashboard for alerts
  • Review failed monitors
  • Verify cron job is running
Weekly Tasks
  • Clean old logs (via Settings)
  • Update monitor configurations
  • Test email notifications
Monthly Tasks
  • Database optimization
  • Backup configuration
  • Review monitoring strategy

Troubleshooting & Help

Common Issues & Solutions

Cause: Cron job not set up or not running properly.

Solution:

  1. Check if cron job is configured: crontab -l
  2. Add the cron job: * * * * * cd /path/to/uptime && php cron.php
  3. Check cron logs: tail -f /var/log/cron
  4. Test manually: php cron.php

Common causes and solutions:

  • Wrong SMTP settings: Verify host, port, and credentials
  • Gmail/Google: Use App Passwords instead of regular password
  • Firewall: Ensure SMTP ports (587, 465) are open
  • Test email: Use Settings > Test Email to verify configuration
Tip: Check your server's error logs for detailed email failure reasons.

Solutions:

  • Increase timeout: Set timeout to 15-30 seconds for slow sites
  • Check expected HTTP code: Some sites return 301/302 instead of 200
  • Remove keyword check: If using keyword monitoring, ensure the text exists
  • Check server resources: Low memory/CPU can cause timeouts
  • Test manually: Use the "Test Now" button on individual monitors

Check these settings:

  1. Database credentials in config/database.php
  2. Database server is running: service mysql status
  3. Database exists and user has permissions
  4. Host is correct (usually 'localhost')
# Test database connection mysql -h localhost -u username -p database_name

Requirements for SSL monitoring:

  • OpenSSL PHP extension must be enabled
  • Server must have internet access to the target site
  • Port 443 must be accessible
  • Enable "SSL Certificate Check" in monitor settings
# Test SSL manually openssl s_client -connect example.com:443 -servername example.com

Getting Additional Help

Documentation Files

Check the /docs/ folder for detailed guides:

  • installation-guide.md
  • troubleshooting-guide.md
  • api-documentation.md
  • admin-guide.md

Contact & Support

Need Help? Contact the Developer

Developer

Paweł Kłopotowski

Full-Stack Developer & System Administrator

Email Support

webmaster@pklopotowski.pl

Response time: 24-48 hours


What to Include in Your Support Request
  • Detailed description of the issue
  • Steps to reproduce the problem
  • Your server environment (PHP, MySQL versions)
  • Screenshots if applicable
  • Error messages from logs
  • Your license/purchase information
Support Includes
  • Installation assistance
  • Configuration help
  • Bug fixes
  • Feature explanations
  • Troubleshooting guidance