Commit graph

62 commits

Author SHA1 Message Date
Frank Elsinga
5dc4bb64d5
Merge branch 'master' into snmp-monitor 2024-06-12 19:55:31 +02:00
Frank Elsinga
b6cd21c71a
Removed where I was wrong about imports 2024-06-07 15:54:28 +02:00
Matt Visnovsky
fdc145bffd Added Robustness
There are a lot of changes here:
-Fixed a lot of issues encountered during my testing
-JSON path is evaluated BEFORE making comparisons (this was the true intended behavior by @chakflying)
-Variable name changes (cosmetic)
-Added != operator
-Changed jsonQueryDescription (again)
2024-06-06 18:52:33 -06:00
Matt Visnovsky
eaa935cba0 Also return result of the evaluation
-Maximum compatibility with @chakflying's existing json-query monitor code.
2024-06-06 10:09:35 -06:00
Matt Visnovsky
efb1642e3c Blend json-query and snmp monitors
Utilizes the JSON Query library to handle comparison logic.
2024-06-05 16:09:53 -06:00
Matt Visnovsky
2d2c1866df Fix: a typo 2024-06-05 15:40:07 -06:00
Matt Visnovsky
b2d76bc60a Refactor line for conciseness 2024-06-05 15:39:55 -06:00
Matt Visnovsky
7eee5db4d2 Variable changes
-Reuse expected_value for snmpControlValue
-Create jsonPathOperator for snmpCondition
2024-06-05 15:37:47 -06:00
Frank Elsinga
d74facded6 removed some monitor drift in terms of imports and documentation 2024-06-04 05:01:53 +02:00
Sebastian Lang
a3ac954140
Add support for custom mongodb commands (#4445)
Co-authored-by: Sebastian Lang <sebastian.lang@damovo.com>
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2024-05-19 21:59:57 +02:00
Matt Visnovsky
d25ee8f128 Using JSON Query Expressions
Equivalent functionality as before, but we're now building json-query expressions for the user.
2024-05-10 10:56:38 -06:00
Matt Visnovsky
1c4740748c Re-use monitor.radiusPassword for community string 2024-05-08 11:00:10 -06:00
Matt Visnovsky
da8f0d1c31
Apply suggestions from code review
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2024-05-08 10:06:20 -06:00
Matt Visnovsky
2b5d100cd3 Ensure SNMP session is closed properly
Addresses https://github.com/louislam/uptime-kuma/pull/4717#discussion_r1589858252

Co-Authored-By: Frank Elsinga <frank.elsinga@tum.de>
2024-05-06 15:56:41 -06:00
Matt Visnovsky
e9b52eb0e7 Separate error cases for SNMP varbind returns 2024-05-06 14:06:40 -06:00
Matt Visnovsky
c68b1c6274 Remove unnecessary func getKey 2024-05-06 12:05:12 -06:00
Matt Visnovsky
433e317eee Simplify error catch
Co-Authored-By: Frank Elsinga <frank.elsinga@tum.de>
2024-05-06 09:57:13 -06:00
Matt Visnovsky
1fe1bb5864 Given that above throws, the else case is not nessesary
Co-Authored-By: Frank Elsinga <frank.elsinga@tum.de>
2024-05-06 09:53:14 -06:00
Matt Visnovsky
997791bc78 Default: invalid condition error
Co-Authored-By: Frank Elsinga <frank.elsinga@tum.de>
2024-05-06 09:51:37 -06:00
Matt Visnovsky
0384b34007 Remove unnecessary func getKey
Addresses:
- https://github.com/louislam/uptime-kuma/pull/4717#discussion_r1589856311
- https://github.com/louislam/uptime-kuma/pull/4717#discussion_r1589862733
2024-05-06 09:49:36 -06:00
Matt Visnovsky
0280b2ad3f A comment about varbinds[0] for clarification
Addresses https://github.com/louislam/uptime-kuma/pull/4717#discussion_r1589855126
2024-05-06 09:21:49 -06:00
Matt Visnovsky
4386d0afad Apply suggestions from code review
Addresses:
-https://github.com/louislam/uptime-kuma/pull/4717#discussion_r1589805237
-https://github.com/louislam/uptime-kuma/pull/4717#discussion_r1589806199
-https://github.com/louislam/uptime-kuma/pull/4717#discussion_r1589853470
-https://github.com/louislam/uptime-kuma/pull/4717#discussion_r1589854032
2024-05-05 15:47:43 -06:00
Matt Visnovsky
09fd816aae Updated code comments 2024-05-03 11:52:02 -06:00
Matt Visnovsky
c87ac2f043 Move getKey() to util.ts 2024-05-03 11:39:14 -06:00
Matt Visnovsky
8e56a81ef1 Refactor how strings/numerics are parsed
Fixes issue `toString() radix argument must be between 2 and 36` due to `.toString("ascii")` conversion. This issue was introduced in 704ffd3f4b.
2024-05-02 15:11:03 -06:00
Matt Visnovsky
f059d54349 Use frontend timeout
Addresses https://github.com/louislam/uptime-kuma/pull/4717#discussion_r1585616669
2024-05-02 15:07:22 -06:00
Matt Visnovsky
9ba0f68a86 Remove supurfluous log.debug
Co-Authored-By: Frank Elsinga <frank.elsinga@tum.de>
2024-04-30 18:19:18 -06:00
Matt Visnovsky
7459654e11 ES Lint Compliant 2024-04-30 18:04:59 -06:00
Matt Visnovsky
ba47aca51f
Apply suggestions from code review
Co-authored-by: Frank Elsinga <frank@elsinga.de>
2024-04-30 17:54:29 -06:00
Frank Elsinga
b4bd003626
Merge branch 'master' into snmp-monitor 2024-05-01 00:01:03 +02:00
Matt Visnovsky
704ffd3f4b Finalized SNMP monitor 2024-04-30 15:18:25 -06:00
Matt Visnovsky
99dc4cfb46 Wrong variable used
Thanks for pointing it out @CommanderStorm!
2024-04-29 22:24:51 -06:00
Matt Visnovsky
4a882be6ba Further SNMP monitor development
Further testing of SNMP feat, however I'm running into the issue `Error in SNMP check: RequestTimedOutError: Request timed out` when the check function is called. I am unsure as to why since my local SNMP script works great with very similar code.
2024-04-29 15:59:59 -06:00
Matt Visnovsky
a3cdd69995 Use net-snmp instead of snmp-native
net-snmp over snmp-native is:
-more robust
-more popular
-better documented
-supports v3
2024-04-29 13:58:43 -06:00
Matt Visnovsky
d92003e172 SNMP Initial Commits
This commit introduces a new SNMP monitor feature to the application, allowing users to monitor devices using SNMP (Simple Network Management Protocol).
2024-04-26 19:05:56 -06:00
Louis Lam
63a380326d Merge branch '1.23.X' into 1.23.13-to-2.0.0
# Conflicts:
#	.github/workflows/auto-test.yml
#	package-lock.json
#	package.json
#	server/database.js
#	server/model/monitor.js
#	server/monitor-types/real-browser-monitor-type.js
#	server/util-server.js
#	test/cypress/unit/i18n.spec.js
2024-04-25 15:42:53 +08:00
Frank Elsinga
0e3b3a9ab8
Made sure that more of the async usages are awaited (#4574) 2024-03-15 15:02:55 +01:00
Frank Elsinga
a9a1cf1353
Chore: General notification reformatting (#3182)
- I unified where in file the name of `NotificationProvider.name` is placed
- I made sure that all the providers adhere to the signature of `NotificationProvider.send()`
- I made sure that all the providers use `okMsg` if returning success messages directly from the function.
  Here a discussion should be had:
  Should this be refactored into a constant of `NotificationProvider`? I could imagine that `NotificationProvider.SENDING_SUCCESSFULL`  could be a suitable alternative.
- I made sure all providers have the URL they `POST`/`GET` to be extraced into a variable.
  => refactored this way due to Nelsons suggestion
2024-03-14 14:21:15 +01:00
Stefan Heine
6bfc58674a MQTT monitor, set the MQTT clientId to make it easier in the MQTT broker to identify where the connections are coming from 2024-02-19 07:57:34 +01:00
Stefan Heine
1b293f2754 MQTT monitor, set the MQTT clientId to make it easier in the MQTT broker to identify where the connections are coming from 2024-02-19 07:42:37 +01:00
Nelson Chan
cf075a8793
Fix: missing await in getRemoteBrowser() (#4418) 2024-01-26 06:53:15 +08:00
Nelson Chan
288cab6dd7
Fix: Make sure browser is connected before returning (#4417) 2024-01-25 07:59:42 +08:00
Louis Lam
2a315d4c84 Merge branch '1.23.X' into merge
# Conflicts:
#	package-lock.json
#	package.json
2024-01-03 02:10:01 +08:00
Louis Lam
8151ac0e25
Fix Async child process output issue (#4231) 2023-12-14 04:54:34 +08:00
Nelson Chan
46432618e1
Feat: Add json-query to MQTT monitor type (#3857)
* Feat: Add json-query MQTT monitor type

* Fix: Allow result to be null

* Fix: Remove unused parameter

* Chore: Update JSDoc

* Fix: Add default if checkType is not set

---------

Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-12-03 01:36:19 +08:00
Louis Lam
c5d9c54a04 Merge branch 'master' into 1.23.X-merge-to-2.X.X-2
# Conflicts:
#	package.json
2023-12-02 18:43:06 +08:00
Louis Lam
81c9900e23 Merge branch '1.23.X' into 1.23.X-merge-to-2.X.X-2
# Conflicts:
#	docker/debian-base.dockerfile
2023-12-01 15:50:35 +08:00
Adam Hancock
62780001f7
Feature: remote browser support (#3904)
* [empty commit] pull request for remote browser support

* Remote browser: Added UI screens and DB tables.

* Remote browser working

* Fixing tests

* Fix tests

* Fix tests

* fix tests

* Test browser

* revert init_db.js

* Changed drop down to ActionSelect

* Fix translations

* added remote browsers toggle

* revert changes package-lock

* Fix bad english

* Set default remote browser

* Remote browsers Requested changes

* fixed description.
2023-12-01 15:29:10 +08:00
Louis Lam
9fb95fe95e
Add support for /snap/bin/chromium (#4141) 2023-12-01 14:25:41 +08:00
Louis Lam
1708b67949
Change execSync/spawnSync to async (#4123)
* WIP

* Add missing await

* Update package-lock.json
2023-11-30 16:12:04 +08:00