ServicePilot SaaS Documentation

Agents

What is a ServicePilot Agent

ServicePilot Agents are designed to collect monitoring data from various sources and send this data to ServicePilot. ServicePilot Agents require minimal configuration. All they need web is access to ServicePilot and an API Key to secure the communication. All further configuration is done through the ServicePilot web interface.

ServicePilot Agent collection capabilities

Different ServicePilot Agents have different collection capabilities. To see what the Server and Gateway Agents can do, take a look at the Agent Details web pages:

  1. Using a user with administrative privileges, log in to ServicePilot.
  2. Open configuration Configuration icon
  3. Navigate to the Agents menu item Agents menu item
  4. Click on the Agent Details button Agent Details button

ServicePilot Server & Gateway Agent

These Server & Gateway Agents collect data from servers on which they are installed or from other devices. The Agents may also receive unsolicited event data if they are configured to do so.

The ServicePilot Windows Agent has been compiled against .NET 3.5, 4.0 and 4.5. Pick the Agent with the latest version of .NET supported by your operating system as this will provide more collection capabilities.

The ServicePilot Linux Agent has been compiled for RedHat and Debian based x86 and x64 distributions as well as Raspbian ARM.

If more collection capabilities are required on Linux based operating systems or MacOS then a ServicePilot .NET Core Agent can be installed after installing the .NET Core pre-requisite.

ServicePilot Desktop inventory Agent

The ServicePilot Desktop inventory Agent is designed to collect hardware and software inventory from Windows workstations.

ServicePilot Developer Agents

Statistical data on the number or type of web calls made in Puppeteer, JavaScript in web browsers and NodeJS applications may be collected. These integrations require instrumenting the code in question to send ServicePilot details of the calls.

Open source Agent integration

The ServicePilot Windows Agent may act as a gateway to a number of open source agents, so providing ServicePilot with the data collected by these agents.

Download ServicePilot Agents

  1. Using a user with administrative privileges, log in to ServicePilot.
  2. Open configuration Configuration icon
  3. Click on Agents Agents menu item
  4. Click on Install an agent Install an agent button
  5. Select the Agent to install and follow the instructions under Get started Get started button

Obtaining a ServicePilot API Key

ServicePilot Agents communicate with ServicePilot using an API Key. Multiple API Keys may be created and used but each Agent needs to be configured with a valid write capable API Key. To view the API Keys that can be used go to the Keys web page:

  1. Using a user with administrative privileges, log in to ServicePilot.
  2. Open configuration Configuration icon
  3. Click on Keys Keys menu item
  4. Note an API Key with Read/Write authorization Key list

Installing a Windows ServicePilot Agent

After downloading the ServicePilot Agent, double-click on the file to run the installer. At the end of the installation, the ServicePilot Setup Console is opened. Set the parameters so that the ServicePilot Agent can communicate with ServicePilot, then start the Agent. The console may be closed once the Agent is correctly communicating with ServicePilot.

Parameter Description
API Key A write authorized API Key as found in the list of API Keys listed above
Remote Command Do not enable this parameter unless a monitored resource requires this ability. Package descriptions will indicate when this is required.

Windows Agent parameters 1

Parameter Description
Use proxy If access to ServicePilot requires a web proxy then enable this option and complete the proxy address and port fields
Address Specify the IP Address of the proxy
Port Specify the port of the proxy
Username Specify a username to allow proxy access, if required
Password Specify a password to allow proxy access, if required

Windows Agent parameters 2

Installing a Linux ServicePilot Agent

After downloading the ServicePilot Agent, make sure that the file is executable and become root to be able to run the self-extracting archive. At the end of the installation, the script will ask for an API Key. Set the parameters so that the ServicePilot Agent can communicate with ServicePilot. You may stop and start the spagent service using your Linux distrbution's standard commands.

# chmod +x servicepilotlinuxagent.run
# ./servicepilotlinuxagent.run

Creating directory _agent_files
Verifying archive integrity...  100%   All good.
Uncompressing ServicePilot Linux Agent Package  100%
This is RedHat based distro
64 Bit
Enter API KEY

10000000-0000-0000-0000-000000000000

Run in debug mode? [default: n]

n

Enter ServicePilot Agent Log Path [default: '/var/log/']

/var/log/

SP Agent Started.
LinuxAgent started
logrotate is present on this machine.
logrotate file set up for spagent.

#

Installing a .NET Core ServicePilot Agent

Before installing the .NET Core Agent, make certain that the .NET Core runtime is installed. Follow the Microsoft installation documentation and verify the installation by running the following command as root.

# dotnet --list-runtimes

After downloading the ServicePilot Agent, make sure that the file is executable and become root to be able to run the self-extracting archive. At the end of the installation, the script will ask for an API Key. Set the parameters so that the ServicePilot Agent can communicate with ServicePilot. You may stop and start the DotnetCoreAgent service using your Linux distrbution's standard commands.

# chmod +x servicepilotdotnetagent.run
# ./servicepilotdotnetagent.run

Creating directory _agent_files
Verifying archive integrity...  100%   All good.
Uncompressing ServicePilot .NEt Core Agent Package  100%
dotnet version 3.0.0 [/usr/share/dotnet/shared/Microsoft.NETCore.App] installed.  Proceeding with installation of agent..
Enter API KEY

10000000-0000-0000-0000-000000000000

Run in debug mode? [default: n]

n

Enter ServicePilot Agent Log Path [default: '/var/log/']

/var/log/

This is RedHat based distro
DotnetCoreAgent Started.
DotnetCoreAgent started

#

Check that a ServicePilot Agent is working

To make sure that the ServicePilot Agents are communicating correctly with ServicePilot, open the Agents web page:

  1. Using a user with administrative privileges, log in to the ServicePilot web pages.
  2. Open configuration Configuration icon
  3. Click on Agents Agents menu item

The Agent should appear in the list with either a yellow or green status and a Last seen value within a few seconds. A yellow status indicates that the Agent has yet to be given anything to do.

ServicePilot Agent logs

ServicePilot Agent logs may indicate connectivity errors between the ServicePilot Agent and ServicePilot or they may indicate issues obtaining data from devices. These Agent logs are particularly interesting if monitoring does not appear to work between the Agent and remote devices due to bad access credentials.

Open the Agent logs with a text editor:

Windows Agent logs

C:\Program Files (x86)\ServicePilot\ServicePilot ISM Enterprise\Logs\ServicePilotAgent.log

Linux Agent logs

/var/log/spagent.log

.NET Core Agent logs

/var/log/ServicePilotAgent.log

Uninstalling a ServicePilot Agent

If a ServicePilot Agent is no longer required, it can be uninstalled.

Check if an Agent is being used

  1. Using a user with administrative privileges, log in to ServicePilot.
  2. Open configuration Configuration icon
  3. Click on Agents Agents menu item

If an Agent is not used, the status will be yellow meaning that it is not configured. If the Agent is still being used, clicking on the blue magnifying glass will show the Agent details including the Agent data. This will list the resources that are currently using this Agent.

Uninstalling a Windows ServicePilot Agent

To uninstall a Windows ServicePilot Agent successfully, make sure that it is stopped before removing it.

  1. Stop the ServicePilotAgent service
  2. Stop the ServicePilot Setup Console if it is running
  3. Uninstall the ServicePilot Agent from the Windows Programs and Features control panel
  4. Optional: You may delete the C:\Program Files (x86)\ServicePilot directory if you don't want to keep the Agent logs
  5. Optional: If you do not want to re-install a ServicePilot Agent then you may remove the HKEY_LOCAL_MACHINE\SOFTWARE\ServicePilot Technologies registry key

Uninstalling a Linux ServicePilot Agent

To uninstall a Linux ServicePilot Agent successfully, make sure that it is stopped before removing it.

  1. Stop the spagent daemon using the standard commands for your Linux distribution systemctl stop spagent or service spagent stop
  2. Uninstall the Linux ServicePilot Agent using the standard commands for your Linux distribution rpm -e spagent or dpkg --remove spagent
  3. Optional: You may delete the /var/log/spagent* files if you don't want to keep the Agent logs
  4. Optional: If you do not want to re-install a ServicePilot Agent then you may remove the /etc/spagent configuration directory. Note that this directory is used by both the Linux Agent and the .NET Core Agent.

Uninstalling a .NET Core ServicePilot Agent

To uninstall a .NET Core ServicePilot Agent successfully, make sure that it is stopped before removing it.

  1. Stop the DotnetCoreAgent daemon using the standard commands for your Linux distribution systemctl stop DotnetCoreAgent or service DotnetCoreAgent stop
  2. Uninstall the .NET Core ServicePilot Agent by deleting the installation directory. Delete the /usr/DotnetCoreAgent directory
  3. Optional: You may delete the /var/log/ServicePilotAgent* files if you don't want to keep the Agent logs
  4. Optional: If you do not want to re-install a ServicePilot Agent then you may remove the /etc/spagent configuration directory. Note that this directory is used by both the Linux Agent and the .NET Core Agent.
  5. Optional: You may uninstall the .NET Core runtime if it is not being used for other software by following Microsoft instructions

Remove uninstalled Agents from the Agent list

Until an Agent is uninstalled, removing it from the Agent list will not have the desired effect as the Agent will continue to communicate with ServicePilot and re-add itself to the Agent list.

  1. Using a user with administrative privileges, log in to ServicePilot.
  2. Open configuration Configuration icon
  3. Navigate to Agents Agents menu item
  4. Click on the orange waste bin icon followed by the Delete button to remove an Agent from the Agent list

Get started Now