Skip to main content

One Click Installation

Install InsightHub

InsightHub is a web interface that presents access log data in a tabular format, including columns for essential information like dates, IP addresses, URLs, status codes, methods, user-agents, referers, bandwidth, bots, and more. Users can sort, filter, and search log data and set date ranges. User authentication ensures restricted access to authorized users. The panel is designed to be responsive and user-friendly.

Log in to your ServerAvatar account, navigate to the Billing -> Add-on section, and then Purchase the InsightHub.

To set up InsightHub:

System Requirements:

  • Operating System: Ubuntu 20.04 or Ubuntu 22.04 Server
  • Core: 2 or More
  • Memory: 2 GB or Higher
  • Disk Space: At least 10 GB Space Required
  • A stable internet connection

Software Components:

  • Web Server: Apache or Nginx
  • Database: MySQL or MariaDB
  • Caching: Redis
  • PHP: Version 8.2 or higher (PHP-FPM and CLI)
  • NodeJs 20.x.x & NPM 10.x.x
  • InsightHub License Key
  • SMTP Credentials
  • SSL
  • Supervisor

Follow these steps:

Step 1. System Check

Step 1.1. PHP Cli Version

Access the ServerAvatar server panel, go to Settings in the sidebar, and change the PHP-CLI version to 8.2 or above.

Project Destination - ServerAvatar

Step 1.2. Install Node.js

caution

If Node.js is already installed on your server, and the Node.js version is 20.x.x, and NPM version is 10.x.x, then skip this step.

  • Install Node.js from the Settings tab under General Settings.

    Project Destination - ServerAvatar

  • If the Node.js and NPM versions are not the latest, Update Node.js and NPM from the Settings tab under General Settings.

    Project Destination - ServerAvatar

Step 2. Create an Application

Locate Applications tab and Create an application on your primary or temporary domain.

In the application creation form, select a One Click method, choose Insighthub application, and click Create Application.

Project Destination - ServerAvatar

Step 3. Create a Database

caution

You need database credentials at a time of InsightHub setup process.

Create a database for InsightHub in the Databases tab.

Project Destination - ServerAvatar

Step 4. Setup InsightHub

Access your Application Domain to complete the InsightHub setup steps:

Step 1: Database Credentials

Enter the database credentials generated in the 3rd Step.

Database Credentials

Step 2: License Key

Retrieve the license key from User profile>>Billing>Add-on

License Key

Paste the copied license key here:

License Key

Step 3: SMTP Credentials

Enter SMTP details for the mail configuration. You can also skip this step.

SMTP Credentials

Step 4: Registration

Register as the administrator to gain complete control of InsightHub.

Register User

Step 5: White-label Configuration

Effortlessly customize the appearance for a unique monitoring experience.

Final Setup

  • Data Retention Period: Data prior to the number of days specified in the retention period will be deleted.

  • Redis Password: Get it from Server Settings>>Security Settings from your server panel.

    Redis Password

Please click the Finish button to finalize the setup process.

Step 6: Restart Supervisor

Please restart the Supervisor from your application's Supervisor Tab, which was initially created during the creation of the InsightHub application.

Restart Supervisor - ServerAvatar

Congratulations! You've successfully set up InsightHub. Dive into your data now and uncover actionable insights


Environment Variables

Want to Increase Insighthub Data Processing Speed?

caution

Be careful while setting this value. Adjust it based on server resources to ensure optimal performance. Consider the available memory, processing power, and other server capacities when configuring this variable.

Below are the environment variables configured in the .env file of insighthub:

MAX_CRONJOB_APPLICATION

This variable is utilized for determining the number of applications fetched every time a cron job runs. It sets the batch size for application retrieval during each cron job execution.

Example usage in .env file:

MAX_CRONJOB_APPLICATION=5

Purpose: Fetching the number of applications every cron job run.

FETCH_ACCESS_LOG_LIMIT

The FETCH_ACCESS_LOG_LIMIT variable controls the number of records fetched at a time from the access log file. It plays a crucial role in managing the granularity of data retrieval from the log file.

Example usage in .env file:

FETCH_ACCESS_LOG_LIMIT=2000

Purpose: Fetching the number of records at a time from the log file.

INSERT_CHUNK_SIZE

This variable, INSERT_CHUNK_SIZE, is responsible for creating chunks of data based on the value specified in FETCH_ACCESS_LOG_LIMIT. It determines the size of each chunk for efficient data processing and insertion.

Example usage in .env file:

INSERT_CHUNK_SIZE=50

Purpose: Creating chunks based on FETCH_ACCESS_LOG_LIMIT for data insertion.

PROCESS_CHUNK_READ_SIZE

The PROCESS_CHUNK_READ_SIZE variable is used for processing the data fetched from the log file. It represents the size of each chunk of data that is read and processed during the data processing phase.

Example usage in .env file:

PROCESS_CHUNK_READ_SIZE=1000

Purpose: Processing data fetched from the log file.

Important: After making changes to the .env file, don't forget to restart the queue by running the following command:

php artisan optimize:clear
php artisan queue:restart

Update Insighthub

To update InsightHub, access the Insighthub Application panel, go to Settings in the sidebar, locate Update InsightHub, and click Update.

Project Destination - ServerAvatar