| Age | Commit message (Collapse) | Author |
|
The title will be displayed for window title and as the heading in
the status page.
While at it, remove the status column on the Down History section, since
the value is static.
|
|
In the main configuration, lilin.cfg, user now can add "notif" section with
kind "smtp" to send notification using user's email.
This require renaming "webhook_url" to "remote_url" to minimize duplicate
field, so different kind of notif can use the same "remote_url" value.
|
|
Using 5 seconds timeout cause an error "context deadline exceeded" when
sending notification on some instance of Mattermost.
While at it, fix missing return statement on pushNotifMattermost.
|
|
In the server configuration, one can defined the following section
to send the notification using Mattermost,
[notif]
kind = mattermost
webhook_url = # The incoming webhook URL.
channel = # The channel where the notification will be placed.
down_template = # Message template when service is down.
up_template = # Message template when service is up.
|
|
Instead of using name, which may contains space, use the
file name as service ID.
In this way, the log file name will match with the service
file name.
|
|
Options means optional, while the field in struct may contains
mandatory or must not be empty.
|
|
|
|
In the main Reports struct, we record the failed ScanReport in separate
slices.
Those slices then displayed on the main page under "Fail history"
section.
|
|
When the service keep scanning longer than let say 1 day, the history
of service report keep growing.
We did not want this history consume memory, so at one point we need
to purge it.
This changes limit the maximum history to 120 items.
|
|
The start method run all the services scanner in the background and
consume the report from it from channel.
Each time new report coming it will notify the Server to update the
index page body.
|
|
Instead of using HTML and JavaScript, generate the web page using
template.
This minimize number of works we do in the future (creating client
in JavaScript and HTTP APIs).
|
|
Instead of defining the options in the Service, create it in the
ServiceOptions and pass it to NewService function.
In this way, we can check it, initialize it, and set default value.
The Address option now use URL with scheme, so we can derive the
service type based on the scheme, for example "http://" for HTTP based
service, "tcp://xxx" for TCP based service, and so on.
|
|
The service configuration is stored under "$BASE_DIR/etc/lilin/service.d".
with ".cfg" as the file extension.
The service configuration use INI format.
|
|
lilin is a program to help monitor other services through HTTP, TCP,
and UDP connection.
|