Beginning with Starfish ETL 3.8, the StarfishETL Monitor service is included and created when you install the StarfishETL Scheduler. The Monitor service's Startup Type is set to 'Manual' by default. If you wish to use this service, you should configure the settings (defined below), change the Startup Type to 'Automatic' and start the service. If you are already running a previous version of Starfish ETL, it is recommended that you apply updates to all components of the software, then reinstall the StarfishETL Scheduler from the installation files to ensure the service is registered correctly.
The StarfishETL Monitor is intended to help ensure uptime for mission-critical systems integrations developed with our ETL tool. There are two components to this service, Monitor and Watchdog.
Monitor is intended to run on the same server as the StarfishETL Engine. StarfishETL maintains a log of each time a successful job is run. If your job is supposed to run once every night, then every 24 hours or so this log should be updated. Monitor reviews this log, and if a configured amount of time has past since it has seen an update (in our example say 25 hours) then it will send a notification email to the administrator you've configured. This is useful in cases where perhaps a Windows update has left IIS in a state of needing to be restarted.
Watchdog can be considered an extension of this by ensuring the system is constantly running. It's purpose is to occasionally ping a central server at StarfishETL, for example every 5 minutes. Our server checks to ensure we've heard from your server successfully in the past 20 minutes (configurable). If we haven't heard from your sever, we'll send a notification to your administrator. This is useful in the case where a server has been unintentionally shut down, loses internet connectivity, or other unforeseen circumstances. If you intend to enable Watchdog, you must inform StarfishETL Support before so we can enable this feature for your company.
When contacting us to enable Watchdog, please provide your the following pieces of information:
The settings below must be configured before enabling the StarfishETL Monitor service. You will edit the StarfishMonitor.exe.config file which should be in the same folder where StarfishETL Scheduler was installed.
The settings below are also configured in the same StarfishMonitor.exe.config file.
When updating StarfishETL, the StarfishMonitor.exe.config is not automatically overwritten with a new version. In this case, you may be missing the configuration settings mentioned above. If you have an older version of this file you did not customize, you can overwrite it with this sample.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<section name="StarfishMonitor.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
</sectionGroup>
</configSections>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
<applicationSettings>
<StarfishMonitor.Properties.Settings>
<setting name="EnginePath" serializeAs="String">
<value>C:\Inetpub\wwwroot\StarfishEngine\engine.db</value>
</setting>
<setting name="ProblemInterval" serializeAs="String">
<value>14400</value>
</setting>
<setting name="SMTPServer" serializeAs="String">
<value>smtp.office365.com</value>
</setting>
<setting name="SMTPPort" serializeAs="String">
<value>587</value>
</setting>
<setting name="EmailRecipients" serializeAs="String">
<value>monitor@domain.com</value>
</setting>
<setting name="CompanyName" serializeAs="String">
<value>Your Company Name</value>
</setting>
<setting name="MailFromAddress" serializeAs="String">
<value>monitor@domain.com</value>
</setting>
<setting name="MailFromDisplay" serializeAs="String">
<value>Starfish Monitor</value>
</setting>
<setting name="Debug" serializeAs="String">
<value>False</value>
</setting>
<setting name="EnableSSL" serializeAs="String">
<value>True</value>
</setting>
<setting name="CheckInterval" serializeAs="String">
<value>900</value>
</setting>
<setting name="SMTPUsername" serializeAs="String">
<value>monitor@domain.com</value>
</setting>
<setting name="SMTPPassword" serializeAs="String">
<value>Password</value>
</setting>
<setting name="WatchdogEnabled" serializeAs="String">
<value>False</value>
</setting>
<setting name="LicenseCode" serializeAs="String">
<value />
</setting>
<setting name="WatchdogKickInterval" serializeAs="String">
<value>300</value>
</setting>
</StarfishMonitor.Properties.Settings>
</applicationSettings>
</configuration>