In order to configure a Linux machine you have to edit the /etc/pulseway/config.xml file. Here's a sample configuration:
<?xml version="1.0" encoding="utf-8"?>
<config xmlns="http://www.pulseway.com/linuxconfig">
<!--Pulseway Linux Monitoring Agent - pulseway.com -->
<!--Account Information
- Username: your Pulseway username
- Password: your Pulseway password (the plain password will be automatically encrypted the next time the Pulseway service starts)
- UseCustomServer: enable this option only if you have a dedicated Enterprise Server assigned to your account
- CustomServerAddress: your Enterprise Server address-->
<Account Username="" Password="" UseCustomServer="false" CustomServerAddress="" />
<!--Computer Information
- Name: computer name used for display and listing (by default the Linux computer name will be used)
- Group: commputer group name-->
<ComputerInformation Name="" Group="Default" />
<!--System Commands-->
<AllowedCommands>
<Restart Allowed="true" />
<ShutDown Allowed="true" />
<PowerOff Allowed="true" />
<Suspend Allowed="false" />
<Hibernate Allowed="false" />
</AllowedCommands>
<!--Monitored Services-->
<MonitoredServices>
<!--Service
- Name: service name
- DisplayName: friendly name used for display
- IsDaemon: 'true' if the monitored service is a daemon and 'false' if the monitored service is a process
- DaemonType: system management daemon type: NONE, SYSVINIT, UPSTART or SYSTEMD
- Path: path of the monitored service (this is used when the monitored service is a process)
- StartParameters: parameters used to start the monitored service (this is used when the monitored service is a process)
- CanBeStopped: 'true' or 'false'-->
<Service Name="cups" DisplayName="CUPS Service" IsDaemon="true" DaemonType="SYSVINIT" Path="" StartParameters="" CanBeStopped="true" Enabled="false" />
<Service Name="ntpd" DisplayName="NTPD Process" IsDaemon="false" DaemonType="NONE" Path="/usr/sbin/ntpd" StartParameters="-p /var/run/ntp/ntpd.pid -g -u ntp:ntp -i /var/lib/ntp -c /etc/ntp.conf" CanBeStopped="true" Enabled="false" />
<Service Name="ssh" DisplayName="SSH Daemon" IsDaemon="true" DaemonType="UPSTART" Path="" StartParameters="" CanBeStopped="true" Enabled="false" />
<Service Name="SuSEfirewall2.service" DisplayName="SuSE Firewall Service" IsDaemon="true" DaemonType="SYSTEMD" Path="" StartParameters="" CanBeStopped="true" Enabled="false" />
</MonitoredServices>
<!--SSL Certificates and Web Sites-->
<Web>
<!--SSL Certificates-->
<Certificates>
<!--Certificate
- Server: server name or IP address
- Port: server port-->
<Certificate Server="google.com" Port="443" Enabled="false" />
<Certificate Server="microsoft.com" Port="443" Enabled="false" />
</Certificates>
<!--Web Sites-->
<WebSites>
<!--WebSite
- Url: web site Url
- Type: method used for testing the web site - HEAD or GET
- Name: name used for display-->
<WebSite Url="http://www.google.com"Type="HEAD" Name="Google (using HEAD)" Enabled="false" />
<WebSite Url="http://www.intel.com"Type="GET" Name="Intel (using GET)" Enabled="false" />
</WebSites>
</Web>
<!--Network-->
<Network>
<!--Ping
- Server: server IP address or hostname-->
<Ping Server="8.8.8.8" Enabled="false"/>
<!--Ports-->
<MonitoredPorts>
<!--Port
- Type: TCP or UDP
- Number: port number
- Name: port name
- Address: computer name or IP address (for UDP only localhost or 127.0.0.1 are valid)-->
<Port Type="TCP" Number="80" Name="Google (port 80)" Address="www.google.com" Enabled="false"/>
<Port Type="TCP" Number="443" Name="Google (port 443)" Address="www.google.com" Enabled="false"/>
<Port Type="UDP" Number="53" Name="DNS" Address="127.0.0.1" Enabled="false"/>
</MonitoredPorts>
<!--Network Interfaces-->
<NetworkInterfaces>
<!--Interface
- Name: interface name-->
<Interface Name="eth0" Enabled="false"/>
<Interface Name="eth1" Enabled="false"/>
</NetworkInterfaces>
<!--Wake on WAN
- Port: port number on which the wake packet will be sent-->
<WoWAN Port="9" Enabled="false" />
</Network>
<!--Notifications (supported notification priorities: 0-Critical, 1-Elevated, 2-Normal, 3-Low)-->
<Notifications>
<!--Send a notification when the computer is offline-->
<WhenOffline Enabled="false" />
<!--Send a notification when the computer is online-->
<OnOnline Priority="2" Enabled="false" />
<!--Send a notification when the computer is shutting down-->
<OnShutdown Priority="0" Enabled="true" />
<!--Send a notification when a user logs in-->
<UserLogsIn Priority="2" Enabled="false" />
<!--Send a notification when a user logs out-->
<UserLogsOut Priority="3" Enabled="false" />
<!--Send a notification when the available memory is below a certain percentage (between 10 and 90)-->
<MemoryLow Priority="1" Percentage="10" Enabled="false" />
<!--Send a notification when the CPU usage is above a certain percentage (between 10 and 90) for a number of minutes (between 1 and 120)-->
<HighCpuUsage Priority="1" Percentage="90" Minutes="5" Enabled="false" />
<!--Send a notification when the CPU usage is below a certain percentage (between 10 and 90) for a number of minutes (between 1 and 120)-->
<LowCpuUsage Priority="2" Percentage="10" Minutes="5" Enabled="false" />
<!--Send a notification when a port is closed for a number of minutes (between 1 and 120)-->
<PortClosed Priority="1" Minutes="1" Enabled="false" />
<!--Send a notification when a service has stopped for a number of minutes (between 1 and 120)-->
<ServiceStopped Priority="1" Minutes="1" Enabled="false"/>
<!--HDD Free Space - send a notification when a HDD free space is low
- Percentage: the free space percentage (between 10 and 90)
- Path: the mount path-->
<LowHDDSpace>
<Hdd Percentage="10" Path="/" Priority="0" Enabled="false"/>
<Hdd Percentage="20" Path="/home" Priority="1" Enabled="false"/>
</LowHDDSpace>
<!--Send a notification when the public IP address has changed-->
<IpChange Enabled="false"/>
<!--Ping Responses-->
<PingResponses>
<!--PingResponse
- Address: IP address or hostname
- Milliseconds: a response value that defines a slow ping response
- Minutes: for how many minutes should the condition stay activated before a notification is sent
- PriorityOnSlowResponse: notification priority for the slow response notification
- PriorityOnNoResponse: notification priority for the no response notification
- Alias: display name -->
<PingResponse Address="10.10.10.2" Milliseconds="50" Minutes="15" PriorityOnSlowResponse="1" PriorityOnNoResponse="1" Alias="Printer" Enabled="false" />
<PingResponse Address="10.10.10.1" Milliseconds="50" Minutes="10" PriorityOnSlowResponse="0" PriorityOnNoResponse="0" Alias="Router" Enabled="false" />
</PingResponses>
<!--Send a notification when a SSL certificate is about to expire or has expired
- Days: Number of days before the certification expiry date-->
<SSLCertificateExpiration Days="15" Priority="0" Enabled="true"/>
<!--Send a notification when a web site is not available
- Minutes: Number of minutes the web site has not been available-->
<WebSiteNotAvailable Minutes="1" Priority="0" Enabled="true"/>
</Notifications>
<!--Send a copy of every notification to a syslog server
- Server: Hostname or IP of the syslog server
- Port: Port of the syslog server-->
<SyslogServer Server="127.0.0.1" Port="514" Enabled="false">
<!--Send a status report to the syslog server
- ReportInterval: Status report send interval (in minutes)-->
<SendStatusReport ReportInterval="5" Enabled="false">
<!--Should the report include the processor usage-->
<IncludeProcessorUsage Enabled="false"/>
<!--Should the report include the memory usage-->
<IncludeMemoryUsage Enabled="false"/>
<!--Should the report include the disk space usage-->
<IncludeDiskSpaceUsage Enabled="false"/>
<!--Should the report include the logged in user count-->
<IncludeLoggedInUsersCount Enabled="false"/>
<!--Should the report include the network usage-->
<IncludeNetworkSpeed Enabled="false"/>
<!--Should the report include the ping round trip times-->
<IncludePingRoundtripTime Enabled="false"/>
<!--Should the report include the ping response times-->
<IncludePingResponses Enabled="false"/>
<!--Use a different Syslog Server for status report
- Server: Hostname or IP of the status report custom server
- Port: Port of the status report custom server-->
<StatusReportUseCustomServer Server="127.0.0.1" Port="514" Enabled="false"/>
</SendStatusReport>
</SyslogServer>
<!--Maintenance Mode (when the computer is in maintenance mode no notifications will be sent)-->
<MaintenanceMode Enabled="false" />
<!--Proxy Server Settings
- Host: proxy server IP addressor hostname
- Port: proxy server port
- User: proxy server user (optional)
- Password: proxy server password (optional)-->
<Proxy Host="proxy.host" Port="8080" User="" Password="" Enabled="false" />
<!--Set Pulseway to install new updates automatically-->
<AutoUpdate Enabled="true" />
</config>