|
|
|
@ -43,6 +43,7 @@ func main() {
@@ -43,6 +43,7 @@ func main() {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func execCommand(cmd string, arg ...string) { |
|
|
|
|
defer PanicSafe() |
|
|
|
|
proc := exec.Command(cmd, arg...) |
|
|
|
|
// open the out file for writing
|
|
|
|
|
outfile, err := os.Create(fmt.Sprintf("/adm/log/%+v.log", cmd)) |
|
|
|
@ -104,3 +105,12 @@ func watchFile(filePath string) error {
@@ -104,3 +105,12 @@ func watchFile(filePath string) error {
|
|
|
|
|
|
|
|
|
|
return nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// PanicSafe is a deferrable function to recover from a panic operation.
|
|
|
|
|
func PanicSafe(a ...interface{}) { |
|
|
|
|
if r := recover(); r != nil { |
|
|
|
|
log.Printf("Panic detected: %+v", r) |
|
|
|
|
log.Printf("Optional panic data: %+v", a...) |
|
|
|
|
} |
|
|
|
|
} |