Commit Graph

64 Commits

Author SHA1 Message Date
Ricardo Gonzalez 95ef254b8c Add timestamp to last updated. Fixes #87 2020-10-11 16:14:43 +01:00
Jason Kulatunga bf07077154 fail if the parent directory for database does not exist. 2020-10-08 20:00:03 -06:00
Jason Kulatunga f27883ea4c remove requestcatcher live test. 2020-10-08 17:48:44 -06:00
Jason Kulatunga b04f1b07e8 (0.3.0) Automated packaging of release by Packagr
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
2020-10-08 23:37:10 +00:00
Jason Kulatunga 9fac3c6308 fix gorm dependency. 2020-10-07 22:07:51 -06:00
Jason Kulatunga 1cd5ebaa43 missing device type update. 2020-10-07 21:59:48 -06:00
Jason Kulatunga b44ef5cb9c adding support for a collecto config file.
/scrutiny/config/collector.yaml

Adding ability to specify host identifier (label), that is updated on every collector run.
Can be specified by `host-id` CLI or `COLLECTOR_HOST_ID` env var.

Created a config class, interface and associated tests.

Created a "TransformDetectedDrives" function, that will allow users to insert drives not detected by Smarctl --scan, ignore drives that they dont want, and override smartctl device type.

Added Upsert functionality when registering devices.

Replaced "github.com/jinzhu/gorm" with "gorm.io/gorm" (ORM location moved, was using incorrect lib url)
Removed machineid library.
2020-10-07 21:54:29 -06:00
Jason Kulatunga 32e7044c67 Merge pull request #75 from AnalogJ/notificationss 2020-10-05 19:48:32 -06:00
Jason Kulatunga ac7c1f28cf ignore empty ("") errors. 2020-10-05 08:56:43 -06:00
Jason Kulatunga 80a382d098 slight tweaks to notifications error handling. 2020-10-04 13:55:59 -06:00
Jason Kulatunga a3438297e6 removeedd waitgroup, using sync/errgroup instead (to pass error messages back). returning errors in test notifications endpoint payload. Adding failure tests for webhooks, scripts & shoutrr. 2020-10-03 10:40:27 -06:00
Jason Kulatunga 6ca4ce39de Adding documenation for notifications. 2020-10-03 09:53:06 -06:00
Jason Kulatunga d339e967a6 fixing notifications. 2020-10-02 21:05:04 -06:00
Jason Kulatunga 6377a258f6 sending notifications on failure. 2020-10-01 18:59:08 -06:00
Jason Kulatunga be378bd147 if attribute Id is unknown (and does not match anything in metadata) the frontend breaks. Added more robust frontend display code to handle this case.
fixes #53
2020-09-30 09:10:42 -06:00
Jason Kulatunga 1246f5bba9 started working on notifications. 2020-09-30 08:50:10 -06:00
Jason Kulatunga 7742f4c6c3 fixing windows binary build during CI. Update config missing error message. 2020-09-29 16:16:15 -06:00
Jason Kulatunga 7988381433 (0.2.4) Automated packaging of release by Packagr
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
2020-09-29 03:00:30 +00:00
Jason Kulatunga a80794590a (0.2.3) Automated packaging of release by Packagr
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
2020-09-29 02:53:45 +00:00
Jason Kulatunga 32682283da (0.2.2) Automated packaging of release by Packagr
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
2020-09-29 02:42:44 +00:00
Jason Kulatunga 75a5f7dfb6 (0.2.1) Automated packaging of release by Packagr
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
2020-09-24 03:26:38 +00:00
Jason Kulatunga 6a20228262 adding error handling for all DB calls. Returning StatusInternalServerError whenever an error occurs. Adding additional logging to server handlers.
Make sure we "return" after a c.JSON call.
2020-09-23 09:54:33 -06:00
Jason Kulatunga 5127399e94 conditionally log request body. 2020-09-22 10:26:33 -06:00
Jason Kulatunga 8a975e2164 log request body. 2020-09-22 10:09:29 -06:00
Jason Kulatunga 1c59b3c245 fix tests. 2020-09-21 19:24:39 -06:00
Jason Kulatunga a57120d600 adding new environmental variables for added debugging: COLLECTOR_LOG_FILE, COLLECTOR_DEBUG, DEBUG, SCRUTINY_LOG_FILE, SCRUTINY_DEBUG 2020-09-21 18:41:52 -06:00
Jason Kulatunga 286ec25a94 (0.2.0) Automated packaging of release by Packagr
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
2020-09-21 03:15:05 +00:00
Jason Kulatunga ad3f8480d9 added some anonymized nvme test data to ensure that NVMe drives are correctly processed by new device detection. thanks @Roxedus.
All db testing is done with files created in a temp directory.
2020-09-20 17:37:43 -06:00
Jason Kulatunga 67d1c592a5 include the device type in the title, if it's non-standard. 2020-09-20 17:37:43 -06:00
Jason Kulatunga 24262f7c8c pass deviceType when running smartctl data collection (for megaraid type disks).
Make DevicePrefix a public function available outside the detect module.
if device type is detected as "ata" or "scsi", dont pass in via -d parameter, can cause issues with missing data.
2020-09-20 17:37:43 -06:00
Jason Kulatunga 66122778a3 only the firmware can really change between scans. Lets slim down the metadata update. 2020-09-20 17:37:43 -06:00
Jason Kulatunga 23d5b86b1b new device detection engine (OS aware). Uses smartctl --scan to detect drives (and conditionally uses jaypipes/ghw). WWN is calculated from smartctl data, then retrieved from GHW, and fallsback to serial number. WWN calcuation code is based on IEEE spec, for "Registered" IEEE format - NAA5. TODO: support NAA6 and other formats? 2020-09-20 17:37:43 -06:00
Jason Kulatunga e6eeaf7e31 adding mocked detail data for frontend viewing. placeholders for settings panels. Add dialog panel for Details setings. 2020-09-18 10:14:19 -06:00
Jason Kulatunga 5101a37964 adding device protocl and type to the. Adding class for parsing smartctl --scan json output, for device detection. added an example/test file for smartctl -x -j added a placeholder settings panel. moved dashboard & details compoonent out of "Admin" directory. 2020-09-18 10:14:19 -06:00
Jason Kulatunga 98415e625d fix import. added simle test for notify test endpoint. 2020-09-18 10:14:19 -06:00
Jason Kulatunga 78a619b09d moved middleware into more relevant location. Adding send test notifications handler. making sure that config is available from web handler functions. 2020-09-18 10:13:06 -06:00
Jason Kulatunga c913cf39b9 adding new nottification validation erorr. Added a notification class containing webhook, script and shoutrrr notification logic. Adding "Test notification endpoint". 2020-09-18 10:13:06 -06:00
Jason Kulatunga 62b2ec9554 (0.1.13) Automated packaging of release by Packagr
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
2020-09-17 03:24:22 +00:00
Jason Kulatunga 834dcdc223 update test db. 2020-09-08 22:40:08 -07:00
Jason Kulatunga c8471ffa88 (0.1.12) Automated packaging of release by Packagr
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
2020-09-09 05:34:03 +00:00
Jason Kulatunga 86fc10b7b9 added ideal and thresholds for NVMe and SCSI drives.
Added functions (PopulateAttributeStatus) to ensure that NVME and SCSI drives set the status for SMART attributes.
Moved Status populating fucntion into the *Attribute files, so they are closer to the code they actually interact with.
Fix frontend to correctly display status, thresh and Ideal for NVMe and SCSI ddrives.
2020-09-08 22:24:24 -07:00
Jason Kulatunga fb1415f8a5 (0.1.11) Automated packaging of release by Packagr
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
2020-09-07 15:47:30 +00:00
Jason Kulatunga 022b6b6598 (0.1.10) Automated packaging of release by Packagr
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
2020-09-07 15:39:06 +00:00
Jason Kulatunga 09eca64a03 (0.1.9) Automated packaging of release by Packagr
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
2020-09-07 15:26:16 +00:00
Jason Kulatunga 442cda254c (0.1.8) Automated packaging of release by Packagr
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
2020-09-07 15:19:26 +00:00
Jason Kulatunga 451bf73334 (0.1.7) Automated packaging of release by Packagr
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
2020-09-07 15:10:48 +00:00
Jason Kulatunga 586767393d (0.1.6) Automated packaging of release by Packagr
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
2020-09-06 23:14:48 +00:00
Jason Kulatunga 5dd3aed1fe adding threshold for percentage Used.
Adding release pipeline.
2020-09-06 16:06:52 -07:00
Jason Kulatunga c7f529ab41 fixing grid. 2020-08-29 12:22:03 -07:00
Jason Kulatunga 50f1566689 fixing grid. 2020-08-29 11:53:44 -07:00