Commit Graph

71 Commits

Author SHA1 Message Date
spencerryan 9b22bcc5b8 Send Device group membership to Pagerduty (#11522)
* Send Device group membership to Pagerduty

Send device group membership to pagerduty. This allows routing (event rules) on the Pagerduty side to make decisions based on group membership inside LibreNMS

* Simplified changes

Rolled all changes into one line per @murrant sugguestions
2020-05-03 13:22:48 +02:00
spencerryan a545c87ad5 Allow manual configuration of Pagerduty Integration Key (#11519)
* Allow manual configuration of Pagerduty Integration Key

Pagerduty supports a global event queue per account and provides the integration key for it. This allows you to enter the key directly and bypass the OAuth workflow if desired.

* Update Pagerduty.php

Fixed spacing.
2020-05-01 22:03:11 -05:00
Heath Barnhart 10660261df pagerduty transport uses template message (#11459) 2020-04-21 23:48:23 +02:00
Tony Murray 1c08c11a77 Remove Laravel helpers (#11428)
* Remove Laravel helpers

* Replace qualifier with import
2020-04-18 00:37:56 +02:00
Adam Bishop 492ab32b6d Add support for sending events to Sensu (#11383)
* Add support for sending events to Sensu

Sensu is an alerting and monitoring service (and much more) that has a
nagios compatible check API.

This transport translates LibreNMS alerts into Sensu events, and sends
them to the agent API running on the same host as the poller.

The transport has a few options, but none of them are required - if the
Sensu agent is correctly configured, alerts will be sent as soon as the
transport is enabled.

There's a fair amount of code, as I've tried to translate as much data as
possible between LibreNMS and Sensu.

* Update Transports.md

* If alerted is 0, send an "ok" alert dated rrd.step / 2 seconds ago

This makes Sensu aware of the last time the check ran successfully (ish).
If we don't send the initial "ok", Sensu will either display 'unknown',
or an incorrectly high duration for the incident.

Alerted gets set to 1 after the first alert is sent.

We choose rrd.step / 2 as:
 * rrd.step is the maximum time ago the check could have succeeded
 * we halve it, so that if a check is flapping, it is not masked

Basically, we guess that the check fails around halfway through the time
since the poller last ran.

* Add additional metadata

* Improve codeclimate slightly

* Consider names that are 2 or 3 components long
2020-04-11 14:29:13 -05:00
Joe Clarke 0a34322877 Do not strip tags when markdown is in use. (#11075)
Markdown supports limited HTML tags, which can help enrich messages.
Additionally, eliminate extra whitespace when markdown is used as that
will have weird output effects.
2020-01-29 05:59:23 -06:00
SpaceDump 25920be1db Added fix for escaping underscore while using Markdown (#11070)
* Added fix for escaping underscore while using Markdown

* Corrected indentation
2020-01-26 08:05:49 -06:00
SourceDoctor b125dd1eae get colors from getColorState function (#10955) 2019-12-27 10:57:29 +01:00
SourceDoctor 60f33f79b6 get colors from getColorState function (#10956) 2019-12-27 10:56:56 +01:00
SourceDoctor a1f4b1b88f Get Colors from getColorState function, for Transport Slack (#10957) 2019-12-18 23:49:22 +01:00
SourceDoctor f835198a45 Globalize getColorForState function (#10944)
* globalize getColorForState function
2019-12-17 22:27:08 +01:00
cjwbath c2603e789f More appropriate state colours for MS Teams alerts (#10911)
* More appropriate state colours for MS Teams alerts
* Split colour lookup to new function to keep Code Climate happy
* Remove bits of whitespace
2019-12-13 16:51:34 +01:00
mendoza-conicet 0ea346113a Add Headers and body to API Transports (#10614)
* Add Headers and body
add PUT Method

* fix check length of headers

* bad commit

* style check

* better body description

* Descr and RFC enforcement on 'PUT' and body

Only PUT can accept a statically defined body. GET will ignore it (RFC) and POST body is generated with the parameters.

* Process the variables as well for headers

* Update Api.php

* update docs
2019-11-01 09:00:26 +01:00
Tony Murray fe0506c04c Add missing import (#10741) 2019-10-24 13:37:18 +00:00
Ngo Quang Hoa caaa6a97bc Update Alerta.php (#10684) 2019-10-21 00:50:11 +00:00
hartred 3c25551a93 Update Slack.php add emoji and username support (#10695)
* Update Slack.php add emoji and username support

* Update

* Update
2019-10-16 23:52:36 +02:00
Tony Murray 7482422614 When sending email alerts use CRLF for windows clients (#10563)
* When sending email alerts use CRLF for windows clients

* Convert hard \r\n into line return in templates

* there is no down really
2019-10-02 14:08:10 +00:00
Shao Yu-Lung (Allen) 9ac70037bb Add LINE Notify Alert Transport. (#10495)
* Add LINE Notify Alert Transport.

* Fix code style.

* Update document.

* Update Linenotify.php
2019-09-05 04:30:53 +00:00
Joe Clarke 8bbc69a878 Add support for using Markdown for the Ciscospark transport (#10442)
* Add support for using Markdown.

Alert templates can be written using Webex Teams (i.e., Spark) Markdown,
which makes for some richer alerts.  This option defaults to false to
maintain Principle of Least Astonishment.

* Update Cisco Spark docs.

* Mention that Cisco Spark is now called Webex Teams
* Add support for Markdown

* Refactor text.

Do not exceed 80 characters per line.

* Refactor code to meet style guidelines.

* Remove errant tabs and use spaces instead
* Correct type check
* Remove use of 'else'
2019-07-14 16:34:22 -05:00
PipoCanaja ef637a7c77 API Transport - Empty lines handling (#10431)
* API Transport - Empty lines handling

* Handle empty lines

* Update Api.php
2019-07-10 23:23:45 -05:00
PipoCanaja 55f67f42fe Refactor Api transport to use Guzzle (and new variables syntax) (#10070)
* Allow new {{ $xxxx }} syntax

* Properly handle urlencode on variable values without braking the URL, and uses Blades

* Doc
Doc typo

* use Guzzle for HTTP requests

* Add Basic auth support

* Doc update

* clean

* Revert Blades, but keep the {{ $xxxx }} syntax

* Revert Blades, but keep the {{ $xxxx }} syntax

* Init Vars and comments

* Notifications

* api-options are not required

* Update notifications.rss
2019-07-04 16:55:29 +01:00
Tony Murray dd2fc0baf8 Fix Dummy alert transport (#10379) 2019-06-26 09:47:03 -05:00
Tony Murray f3ba8947f7 Use Config helper (#10339)
remove usage of global variable
2019-06-23 00:29:12 -05:00
Tony Murray 312d35dd95 SMS Eagle reduce chances of user mis-configuration (#10223)
* Merge pull request #54 from librenms-plugins/revert-52-PluginNamespaceCorrection

Revert "Adding namespace LibreNMS\Plugins;"
SMS Eagle prevent user mis-configuration
Only allow URLs, but automatically append http:// to ones that are only hostname

* restore whitespace
2019-05-14 08:29:34 -05:00
Tyler Christiansen 89197581d2 Cast alert ID to string for PagerDuty API (#10186) 2019-05-04 00:05:47 +02:00
Mihai Petracovici 2df2956817 Improved option naming & validation for smseagle (#10141)
* Relax validation for smseagle hostname
* Update property description and documentation
2019-04-27 09:08:16 +02:00
Neil Lathwood d31a551464 Removed legacy code from transports (#10081) 2019-04-12 12:33:10 -05:00
Tony Murray ac1cd1296b Fix transport options when edited on Windows (#10001)
Windows puts line returns as \r\n, when parsing LibreNMS previously left the \r, which could cause issues
Centralize the code so we just have one place to fix.
Try to fix SMSEagle, it had the options wrong (copied from another transport)
2019-03-27 07:18:02 -05:00
angryp 15aee15388 Alertmanager fix 2 (#9860)
* Improved Alertmanager transport

* Typo fix

* Fix according to Travis fail
2019-03-01 23:09:25 -06:00
pobradovic08 67d81e68c9 LibreNMS/Alert/Transport/Elasticsearch - Send timestamp with timezone (#9757)
* Send timestamp with timezone

Add timezone to timestamp field, otherwise ES will think it's UTC

* Update Elasticsearch.php
2019-02-12 21:48:12 -06:00
Misha Komarovskiy fe4bd2b338 Update Mattermost transport with configurable author_name (#9759)
Signed-off-by: Misha Komarovskiy <zombah@gmail.com>
2019-02-12 18:22:30 -06:00
angryp c0aea751e3 Fixed Alertmanager transport (#9807) 2019-02-12 17:51:20 -06:00
aylham cf1701624f Canopsis transport (#9795)
* Change in the Canopsis transport to make it 3.9.0 compliant and link to
the new documentation

* Add missing php72 module on Centos

* Fixing documentation for AMQP based tranport outside of the main doc
2019-02-11 09:46:09 -06:00
Richard Mayhew 1f53e7658c Msteams (#9774)
Msteams consistent title
2019-02-07 01:24:58 -06:00
George Pantazis b6c1048c36 Added Mattermost Transport 2019-01-28 11:36:05 +02:00
TheGreatDoc a0e33a6703 Merge pull request #9743 from librenms/revert-9711-issue-5659
Revert "Mattermost Alert Transport"
2019-01-26 08:31:24 +01:00
TheGreatDoc 75927c8389 Revert "Mattermost Alert Transport (#9711)"
This reverts commit 09d500812e.
2019-01-26 07:59:04 +01:00
GitStoph 4ed8f67e0d Added Alerta Alert Transport (#9673)
* Added Alerta Transport option.

* fixed a couple codacy requirements

* Update Alerta.php
2019-01-25 15:37:27 -06:00
George Pantazis 09d500812e Mattermost Alert Transport (#9711)
* fixed #5659
Added support for Mattermost notifications.

George Pantazis <gpant@eservices-greece.com>

* Update Mattermost.php

* changes as requested by @murrant
2019-01-25 15:35:42 -06:00
Alex Typaldos 29f8a8d4a3 Fix victorops recovery alerts (#9651)
* send entity ID as string

VO will not accept an int as an entity ID, this causes issues when issuing recovery alerts as the entity_id is the only way to link incidents.  I have tested this with VO and incidents will alert AND recover.

* change from str() to strval() which is the correct function
2019-01-12 12:51:52 -06:00
angryp 0c188c5995 Added Alertmanager transport (#9637)
* Added Alertmanager transport

* Fixed as per comments

* Update Alertmanager.php

* Update Alertmanager.php
2019-01-12 10:42:42 +00:00
Tony Murray f451f56e98 Pushover fix sounds (#9519)
* Pushover fix sounds

* fix editing issue with duplicate field ids
2018-12-10 22:18:45 -06:00
gillmore-ac 170b87226d feature: Added HTML tag support for msteams transport (#9533)
* Added HTML tag support for msteams transport

* Update Msteams.php
2018-12-10 21:56:58 -06:00
Drew Hynes 634f1c01f7 changed tabs to spaces 2018-11-30 18:35:07 -05:00
Drew Hynes b4607e4bc2 removed else to satisfy codeclimate checks 2018-11-30 18:09:10 -05:00
Drew Hynes d40c3de918 changed variable name to resolve issue with Gitlab transport 2018-11-30 17:37:13 -05:00
Paulo Coimbra 518e5f06d3 Added format field to Telegram Messages (#9404)
* Add format field to Telegram Messages

Added Telegram field to send formatted messages as Mardown or HTML

* Update Telegram.php

* Correct Mistypo.

* Correct mistypo

* Correct Mistypo

* Correct mistypo

* Update Transports.md

* Add Format field on Telegram Examples

* Change Telegram Format field to type select

* Add "blank" option to Format field

* Update Telegram.php

* Update Telegram.php

* Update Telegram.php
2018-11-08 22:26:29 +00:00
Andy Rosen 4e5a0fa4d7 Added Twilio SMS as an Alerting Transport (#9305)
DO NOT DELETE THIS TEXT

#### Please note

> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.

- [x] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)

#### Testers

If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
After you are done testing, you can remove the changes with `./scripts/github-remove`.  If there are schema changes, you can ask on discord how to revert.
2018-10-17 17:19:28 +01:00
Neil Lathwood 3fc9e334b8 Use correct ID for incident resolution (#9321)
* Use correct ID for incident resolution

* Update Pagerduty.php
2018-10-16 16:38:35 -05:00
Neil Lathwood 53a1730fc7 Fixed PagerDuty alert to show rule name + device as summary (#9213)
* Fixed PagerDuty alert to show rule name + device as summary

* Update Pagerduty.php
2018-09-19 02:28:50 -05:00