Jason Kulatunga
5fb5b9afbe
if we're completing the InfluxDB setup via automation, attempt to store the token in the config file automatically.
3 years ago
Jason Kulatunga
702c7cdf7a
if running test iin github actions, use influxdb service for testing.
3 years ago
Jason Kulatunga
00bc6ecd92
make sure we can pull config from env variables.
3 years ago
Jason Kulatunga
bd39b2cd4d
fixes for aggregation.
3 years ago
Jason Kulatunga
0a9d364aea
adding duration key to smart attributes api endpoint
3 years ago
Jason Kulatunga
f60636a6aa
broke scrutiny_repository.go into multiple files for easier exploration & maintenance.
3 years ago
Jason Kulatunga
7a7771981a
broke scrutiny_repository.go into multiple files for easier exploration & maintenance.
3 years ago
Jason Kulatunga
f569ab6474
[BROKEN COMMIT]
...
This code leverages the new `types.isType` functionality introduced in the flux language (https://github.com/influxdata/flux/issues/2159 )
This code will fix https://github.com/AnalogJ/scrutiny/issues/22 and all related issues.
Unfortunately this code is broken because the influxdb go client library does not correctly handle import statments in the task defintion.
blocked by
https://github.com/influxdata/influxdb-client-go/issues/322
3 years ago
Jason Kulatunga
903d5713fc
fixes for tests.
3 years ago
Jason Kulatunga
0872da57d7
fixes for tests.
3 years ago
Jason Kulatunga
47e8595c9d
using constant vars for duration key magic strings. Fixing Errorf calls to correctly have template data.
3 years ago
Jason Kulatunga
bff83de3a0
query temp data across multiple buckets
3 years ago
Jason Kulatunga
03bfdd3890
changing the duration dropdown for temp history data. adding an /api/summary/temp endpoint
3 years ago
Jason Kulatunga
772063a843
find the temp history for the last week (by default). Smooth out data using aggregate window for hourly numbers. Better temp casting during influx data inflating.
3 years ago
Jason Kulatunga
b776fb8886
tweaking retention policy code so we can test downsampling scripts.
3 years ago
Jason Kulatunga
ce032c5609
fixes for Scrutiny end-to-end testing.
3 years ago
Jason Kulatunga
060ac7b83a
fixes https://github.com/AnalogJ/scrutiny/issues/179
3 years ago
Jason Kulatunga
7b7b4fe4e3
fixing test.
3 years ago
Jason Kulatunga
5789c836db
make sure the status is always exposed in the json data. make sure display_name for metadata is included. Update mocked test data for frontend.
3 years ago
Jason Kulatunga
deba21fe19
update timestamps for testing.
3 years ago
Jason Kulatunga
31b5dfa038
ensure that all buckets are created during init. Remove all references to "name" field for attributes (shoudl come from metadata instead). Status is now an int64 (0 is passing).
3 years ago
Jason Kulatunga
9878985fa3
adding aggregation code
3 years ago
Jason Kulatunga
975c034925
WIP downsample scripts.
3 years ago
Jason Kulatunga
bd19230cbf
make sure data is persisted to DB.
3 years ago
Jason Kulatunga
80f4660130
validate thresholds whenever SMART data is recieved.
3 years ago
Jason Kulatunga
8a46931399
!!!!WIP!!!!
...
adding InfluxDB
- influxdb added to dockerfile
- influxdb s6 service
- influxdb config
- adding defaults to config
- creating a DeviceRepo interface (multiple db backends)
- implemented DeviceRepo interface as ScruitnyRepository
3 years ago
Andrea Spacca
a7c8c75a49
fix new test
3 years ago
Andrea Spacca
234a8f9b01
cr fixes
3 years ago
Andrea Spacca
48bc7cedf4
test cases
3 years ago
Andrea Spacca
9fc11b7140
BASEPATH
3 years ago
Andrea Spacca
ea3fbc09f1
BASEPATH
3 years ago
Andrea Spacca
86145be2b1
BASEPATH
3 years ago
Jason Kulatunga
fd4f0429e4
(0.3.12) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
9be57f2271
(0.3.11) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
644a9418dd
(0.3.10) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
df07261c57
(0.3.9) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
527214f38c
(0.3.8) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
2fc24d0e76
fix error log.
4 years ago
Jason Kulatunga
4331f86ed4
fixing #164 telegram notification issue while I'm here.
...
TODO: do a full check of all notification params in shoutrrr and ensure they match what we use.
4 years ago
Jason Kulatunga
59d4a8e195
(0.3.7) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
79de0fed2b
upgrade shoutrrr version. Fix duplicate notifications when more than one notification handler configured (closure iteration issue).
...
fixes #160
fixes #146
fixes #135
4 years ago
Jason Kulatunga
5ea9a75039
(0.3.6) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
27b923b5e9
(0.3.5) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
bab25de2f2
(0.3.4) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
520136a5ec
fixing automated version bump, attempt 3.
4 years ago
Jason Kulatunga
e364fe95d9
fixing verion bump for release.
4 years ago
Jason Kulatunga
93cf676818
added a "Success" test for script notifications.
...
bumping the version in version file? not sure why it wasnt correctly bumped already.
4 years ago
Jason Kulatunga
bf07077154
fail if the parent directory for database does not exist.
4 years ago
Jason Kulatunga
f27883ea4c
remove requestcatcher live test.
4 years ago
Jason Kulatunga
b04f1b07e8
(0.3.0) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
9fac3c6308
fix gorm dependency.
4 years ago
Jason Kulatunga
1cd5ebaa43
missing device type update.
4 years ago
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.
4 years ago
Jason Kulatunga
ac7c1f28cf
ignore empty ("") errors.
4 years ago
Jason Kulatunga
80a382d098
slight tweaks to notifications error handling.
4 years ago
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.
4 years ago
Jason Kulatunga
6ca4ce39de
Adding documenation for notifications.
4 years ago
Jason Kulatunga
d339e967a6
fixing notifications.
4 years ago
Jason Kulatunga
6377a258f6
sending notifications on failure.
4 years ago
Jason Kulatunga
1246f5bba9
started working on notifications.
4 years ago
Jason Kulatunga
7742f4c6c3
fixing windows binary build during CI. Update config missing error message.
4 years ago
Jason Kulatunga
7988381433
(0.2.4) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
a80794590a
(0.2.3) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
32682283da
(0.2.2) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
75a5f7dfb6
(0.2.1) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
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.
4 years ago
Jason Kulatunga
5127399e94
conditionally log request body.
4 years ago
Jason Kulatunga
8a975e2164
log request body.
4 years ago
Jason Kulatunga
1c59b3c245
fix tests.
4 years ago
Jason Kulatunga
a57120d600
adding new environmental variables for added debugging: COLLECTOR_LOG_FILE, COLLECTOR_DEBUG, DEBUG, SCRUTINY_LOG_FILE, SCRUTINY_DEBUG
4 years ago
Jason Kulatunga
286ec25a94
(0.2.0) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
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.
4 years ago
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.
4 years ago
Jason Kulatunga
66122778a3
only the firmware can really change between scans. Lets slim down the metadata update.
4 years ago
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?
4 years ago
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.
4 years ago
Jason Kulatunga
98415e625d
fix import. added simle test for notify test endpoint.
4 years ago
Jason Kulatunga
78a619b09d
moved middleware into more relevant location. Adding send test notifications handler. making sure that config is available from web handler functions.
4 years ago
Jason Kulatunga
c913cf39b9
adding new nottification validation erorr. Added a notification class containing webhook, script and shoutrrr notification logic. Adding "Test notification endpoint".
4 years ago
Jason Kulatunga
62b2ec9554
(0.1.13) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
834dcdc223
update test db.
4 years ago
Jason Kulatunga
c8471ffa88
(0.1.12) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
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.
4 years ago
Jason Kulatunga
fb1415f8a5
(0.1.11) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
022b6b6598
(0.1.10) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
09eca64a03
(0.1.9) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
442cda254c
(0.1.8) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
451bf73334
(0.1.7) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
586767393d
(0.1.6) Automated packaging of release by Packagr
...
Signed-off-by: Jason Kulatunga <jason@thesparktree.com>
4 years ago
Jason Kulatunga
5dd3aed1fe
adding threshold for percentage Used.
...
Adding release pipeline.
4 years ago
packagr-io-beta
eb5b5ebee3
(v0.1.5) Automated packaging of release by Packagr
4 years ago
Jason Kulatunga
e283d43654
rename metadata class names.
...
adding metadata for NVME and SCSI drives.
send back protocol specific metadata for displaying data in the UI for attributes.
UI - moved all metadata lookups into named functions (for better if/else logic)
show different columns if nvme or scsi.
4 years ago
Jason Kulatunga
2ad120c87b
added debug logging message for detected devices.
...
adding a mocked class for Config.
Adding device type to Device struct. Will eventually be needed for raid drives.
adding End-to-end testing capabilties.
Added testdata json files for webserver requests.
Seperated Start code and Setup code in webapp so we can test.
renamed "smart_attributes" to "ata_attributes" - Backwards incomatible change.
Added front end device sorting (red, yellow, green)
show unknown icon/status if drive has no smart data yet.
Moved all attribute "getters" into the controller.
created a device-sort pipe.
4 years ago
Jason Kulatunga
5a80ae3e74
WIP - start supporting NVME and SCSI drive smart data.
...
Added addiitonal log message data for Smartctl exit ccode.
4 years ago
packagr-io-beta
794479b28e
(v0.1.4) Automated packaging of release by Packagr
4 years ago
Jason Kulatunga
f7b2a7b41b
make sure results from failing smartctl execution is still sent to API.
4 years ago
Jason Kulatunga
92d54df022
adding test files.
4 years ago
Jason Kulatunga
d636709aa1
Moved version file into webapp source tree. Replacing fmt with logger calls. moved Jobber config file into /scrutiny/jobber directory. Added scsi json file. Moved API rooute handlers into their own files in a module. Added not yet implemnented tooltips.
4 years ago
Jason Kulatunga
a78e4eb001
fix failing test.
4 years ago
Jason Kulatunga
f9e41cd6a2
disable linter.
4 years ago