Commit Graph
100 Commits
Author SHA1 Message Date
Jason KulatungaandGitHub 0fffc167fb Update SUPPORTED_NAS_OS.md 2020-10-09 17:39:50 -06:00
Jason KulatungaandGitHub 216d3a6fe3 Rename INSTALL_UNRAID to INSTALL_UNRAID.md 2020-10-09 17:39:23 -06:00
Jason KulatungaandGitHub c841ba56de Merge pull request #97 from teambvd/patch-1
Create INSTALL_UNRAID
2020-10-09 17:38:53 -06:00
Jason KulatungaandGitHub afca629848 Update build.yaml 2020-10-09 17:35:57 -06:00
Jason KulatungaandGitHub aa720f7065 Update README.md 2020-10-09 11:21:23 -06:00
Jason KulatungaandGitHub b7f97c27bc Update .gitattributes 2020-10-09 11:20:34 -06:00
Jason Kulatunga 52a0f7575e addd a label to PRs and Issues opened by sponsors. 2020-10-09 11:07:26 -06:00
Jason Kulatunga e7a3fd96f0 Scrutiny was trending under the wrong language :( 2020-10-09 10:53:45 -06:00
Jason Kulatunga e32af371f7 tweaks to odcumenation. 2020-10-09 09:58:27 -06:00
Jason KulatungaandGitHub 382175bbb1 Merge pull request #95 from AnalogJ/instant_collector 2020-10-09 09:51:01 -06:00
Jason Kulatunga b09ec3b912 install curl for checking if webserver is ready. 2020-10-09 03:27:12 -06:00
Jason Kulatunga 1b2e95532b automatically run collector on container startup.
fixes #73
2020-10-08 21:24:35 -06:00
Jason KulatungaandGitHub cb307409a0 Merge pull request #77 from AnalogJ/more-release-flavors 2020-10-08 20:41:16 -06:00
Jason Kulatunga dd202c63ec making sure that release binaries are static as well. 2020-10-08 20:19:30 -06:00
Jason Kulatunga 9dd80d7d66 adding release binaries for linux-arm, linux-arm64, freebsd-amd64 2020-10-08 20:11:42 -06:00
Jason Kulatunga bf07077154 fail if the parent directory for database does not exist. 2020-10-08 20:00:03 -06:00
Jason KulatungaandGitHub bd2f305d80 Merge pull request #89 from AnalogJ/static_binary 2020-10-08 19:35:42 -06:00
Jason Kulatunga e32fc5947e static binaries for CI. 2020-10-08 19:28:36 -06:00
Jason Kulatunga ac6b02808c fix ldd command. 2020-10-08 18:59:56 -06:00
Jason Kulatunga 0a55a7076f remove ldd command. 2020-10-08 18:59:35 -06:00
Jason Kulatunga 9e10f3bf50 using netgo 2020-10-08 18:56:28 -06:00
Jason Kulatunga f410e60235 print ldd info as well. 2020-10-08 18:51:38 -06:00
Jason Kulatunga 1d35b14c9d update collector tags. 2020-10-08 17:58:47 -06:00
Jason Kulatunga aff9a0b258 static build attempt 2. 2020-10-08 17:54:24 -06:00
Jason Kulatunga 9ffc55ba13 fix 2020-10-08 17:48:44 -06:00
Jason Kulatunga 99ec2eb2dc using CGO_ENABLED=0 again (-extldflags=-static didnt work for webapp). 2020-10-08 17:48:44 -06:00
Jason Kulatunga 7e78fb4e7d test -extldflags=-static instead (CGO_ENABLED=0 works, but checking alternatives) 2020-10-08 17:48:44 -06:00
Jason Kulatunga 4bd3dd4311 testinig CGO_ENABLED=0 2020-10-08 17:48:44 -06:00
Jason Kulatunga f27883ea4c remove requestcatcher live test. 2020-10-08 17:48:44 -06:00
Jason Kulatunga 1e18086c4d update, working on a true static binary. 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 KulatungaandGitHub 8b5e95f1e1 Merge pull request #88 from AnalogJ/detect_config 2020-10-08 17:33:59 -06:00
Jason KulatungaandGitHub 22429800a7 Merge pull request #85 from PrplHaz4/patch-1 2020-10-08 08:50:54 -06: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 KulatungaandGitHub 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 c8a4be6b07 fix x509: certificate signed by unknown authority error for notifications. 2020-10-04 14:30:05 -06:00
Jason Kulatunga 80a382d098 slight tweaks to notifications error handling. 2020-10-04 13:55:59 -06:00
Jason Kulatunga 81b05515d3 fix missing smartctl binary when running collector via cron (empty PATH).
fixes #76
2020-10-03 22:58:53 -06:00
Jason Kulatunga 1c7ca35ea7 build freebsd binaries for CI (not included in releases yet) 2020-10-03 14:38:19 -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 732eb039da added custom script notification type. 2020-10-03 10:05:44 -06:00
Jason Kulatunga 2d903453d5 updated Debug mode documenation. 2020-10-03 10:01:40 -06:00
Jason Kulatunga 6ca4ce39de Adding documenation for notifications. 2020-10-03 09:53:06 -06:00
Jason Kulatunga 4a12caf043 arm32 builds. 2020-10-02 22:15:35 -06:00
Jason Kulatunga 46d04734b6 arm32 builds. 2020-10-02 22:14:52 -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 adbbcb285a fixes - multiple builds. remove docker build caching. 2020-09-29 17:19:52 -06:00
Jason Kulatunga f0c3fddf26 fixes - multiple builds. 2020-09-29 17:12:38 -06:00
Jason Kulatunga 9816c750b4 multiple builds. 2020-09-29 17:08:10 -06:00
Jason Kulatunga cd6c59599f fixes -- guess and check development. :( 2020-09-29 17:01:20 -06:00
Jason Kulatunga 94559d265c fixes for ARM build 2020-09-29 16:58:04 -06:00
Jason Kulatunga 95e5a5e768 remove windows build. 2020-09-29 16:25:48 -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 6473ec1a28 Adding automatic builds to CI for arm64 + windows - eventual support. Call out the fact that NVMe drives require --cap-add SYS_ADMIN in addition to SYS_RAWIO. 2020-09-29 16:05:05 -06:00
Jason Kulatunga c7c1e37170 updating docs. use /opt/ not /etc/. Describe RAID instructions. 2020-09-29 10:12:40 -06:00
Jason Kulatunga 7de7935790 manual install instructions. 2020-09-28 22:29:57 -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 013eccdd58 fixing frontend code release, again. 2020-09-28 20:57:21 -06: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 f56200452a fixing frontend code release. 2020-09-28 20:50:23 -06: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 8775b02970 make sure the webfrontend is packaged and uploaded to each release for manual installation. 2020-09-28 20:33:13 -06:00
Jason KulatungaandGitHub 38ea7f7839 Merge pull request #51 from AnalogJ/x_flag
retrieve all device data. SAS devices do not return power on hours wh…
2020-09-28 20:00:12 -06:00
Jason Kulatunga cb0aa9823e retrieve all device data. SAS devices do not return power on hours when using -a flag (unlike other device types).
fixes #43
fixes #9
2020-09-26 15:18:55 -06: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 2c2ecbd9f7 fix link 2020-09-23 20:51:13 -06:00
Jason Kulatunga 9bd8aec315 update getting started & documentation to remove -v /dev/ mount and --privileged requirement. Uses --cap-add and --device instead
close #26
close #18
2020-09-23 20:49:56 -06:00
Jason Kulatunga e44864e64b fixes. 2020-09-23 11:01:53 -06:00
Jason Kulatunga 8a336bf5c6 wwn should always be lowercase for consistency. It's used in the URL for pushing smart data. 2020-09-23 10:37:59 -06: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 531fea76b2 keep example config file in sync with config defaults. fixes #3
Adding an example config file for local development to CONTRIBUTING.md.
2020-09-22 18:18:57 -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 7cdacbaffc add information about how to generate debug logs 2020-09-21 22:27:59 -06:00
Jason Kulatunga 2fee2bf906 fix tests. 2020-09-21 21:22:07 -06:00
Jason Kulatunga 1c59b3c245 fix tests. 2020-09-21 19:24:39 -06:00
Jason KulatungaandGitHub 119e24f6ec Merge pull request #41 from AnalogJ/ext_logging
adding new environmental variables for added debugging: COLLECTOR_LOG…
2020-09-21 19:04:29 -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 f2dd87cf82 dont use a go-routine -- disable concurrency. 2020-09-21 09:59:52 -06:00
Jason Kulatunga 8b139ad157 remove concurrency for collector, it causes issues on systems with lots of devices. Just retrieve the data in order for now (eventually we may do it in batches). 2020-09-21 08:44:50 -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 KulatungaandGitHub 211fe7843a Update issue templates 2020-09-20 21:00:52 -06:00
Jason KulatungaandGitHub d6fad90fa4 Merge pull request #38 from AnalogJ/smartctl_scan
Smartctl scan
2020-09-20 20:42:26 -06:00
Jason Kulatunga fd82e9a4da print error message if publish does not finish successfully. 2020-09-20 17:37:43 -06: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 297f0a51c5 adding ability to write a log file with all output from collector. Executing commands will now log be logged (and when debug is enabled, their output's are also logged). 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 3deca46851 fix. 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 f53833d617 add codecov badge. 2020-09-20 16:51:36 -06:00
Jason Kulatunga fab1e3c624 fix the coverage file path. 2020-09-20 16:28:38 -06:00
Jason Kulatunga a55f3acacf generate a coverage.txt file, and upload to codecov.io. 2020-09-20 16:24:30 -06:00