Iniziando servizio per il monitoring dello spazio su disco, raid, etc.
parent
abf86ae549
commit
d4b9dee6d9
@ -0,0 +1,39 @@
|
||||
package jobs
|
||||
|
||||
import (
|
||||
"os"
|
||||
"path"
|
||||
)
|
||||
|
||||
type Config struct {
|
||||
ScriptsDir string `json:"scriptsDir"`
|
||||
}
|
||||
|
||||
type Service struct {
|
||||
Config Config
|
||||
|
||||
scriptPaths []string
|
||||
}
|
||||
|
||||
func New(config Config) *Service {
|
||||
return &Service{
|
||||
Config: config,
|
||||
}
|
||||
}
|
||||
|
||||
func (s *Service) LoadScripts() error {
|
||||
entries, err := os.ReadDir(s.Config.ScriptsDir)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
s.scriptPaths = []string{}
|
||||
|
||||
for _, entry := range entries {
|
||||
s.scriptPaths = append(s.scriptPaths,
|
||||
path.Join(s.Config.ScriptsDir, entry.Name()),
|
||||
)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
#!/bin/bash
|
||||
|
||||
DEVICE="/dev/md0"
|
||||
|
||||
TOTAL_DEVICES=$(mdadm -D "$DEVICE" | grep 'Total Devices' | cut -d':' -f 2 | tr -d ' ')
|
||||
|
||||
mdadm -D "$DEVICE" | tail -n "$TOTAL_DEVICES" | tr -s ' ' | cut -d' ' -f 6
|
||||
|
||||
# Example Output:
|
||||
#
|
||||
# active
|
||||
# active
|
||||
# active
|
||||
# active
|
||||
# active
|
||||
#
|
||||
|
||||
# TODO: Non ho realmente trovato nella documentazione le altre parole, penso siano "missing" e "failing" però boh
|
Loading…
Reference in New Issue