feat: add and remove logger
This commit is contained in:
@ -5,6 +5,7 @@ import (
|
||||
"os"
|
||||
"time"
|
||||
|
||||
lg "git.cryptic.systems/fh-trier/go-flucky/cmd/logger"
|
||||
"git.cryptic.systems/fh-trier/go-flucky/cmd/remote"
|
||||
"git.cryptic.systems/fh-trier/go-flucky/cmd/sensor"
|
||||
"git.cryptic.systems/fh-trier/go-flucky/cmd/temperature"
|
||||
@ -61,6 +62,7 @@ func Execute(version string) {
|
||||
|
||||
rootCmd.PersistentFlags().StringVar(&cfg, "config", "/etc/flucky/config.json", "Config file")
|
||||
|
||||
lg.InitCmd(rootCmd, cfg)
|
||||
// humidity.InitCmd(rootCmd, configDir)
|
||||
remote.InitCmd(rootCmd, cfg)
|
||||
sensor.InitCmd(rootCmd, cfg)
|
||||
|
54
cmd/logger/add.go
Normal file
54
cmd/logger/add.go
Normal file
@ -0,0 +1,54 @@
|
||||
package logger
|
||||
|
||||
import (
|
||||
"log"
|
||||
|
||||
"git.cryptic.systems/fh-trier/go-flucky/pkg/logger"
|
||||
|
||||
"git.cryptic.systems/fh-trier/go-flucky/pkg/config"
|
||||
"github.com/spf13/cobra"
|
||||
)
|
||||
|
||||
var enabled bool
|
||||
|
||||
var addLoggerCmd = &cobra.Command{
|
||||
Use: "add",
|
||||
Short: "Add internal logger",
|
||||
Args: cobra.ExactArgs(2),
|
||||
Aliases: []string{"append"},
|
||||
Example: "flucky logger add temperature /var/log/flucky/temperature.log",
|
||||
Run: func(cmd *cobra.Command, args []string) {
|
||||
|
||||
// read configuration
|
||||
fc, err := config.Read(cfg)
|
||||
if err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
|
||||
// loggertype, err := logger.StringToLoggerType(args[0])
|
||||
// if err != nil {
|
||||
// log.Fatalln(err)
|
||||
// }
|
||||
|
||||
logvalue, err := logger.StringToLogValue(args[0])
|
||||
if err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
|
||||
err = fc.AddLogFile(args[1], logvalue)
|
||||
if err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
|
||||
// save new configuration
|
||||
err = config.Write(fc, cfg)
|
||||
if err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
|
||||
},
|
||||
}
|
||||
|
||||
func init() {
|
||||
loggerCmd.AddCommand(addLoggerCmd)
|
||||
}
|
18
cmd/logger/logger.go
Normal file
18
cmd/logger/logger.go
Normal file
@ -0,0 +1,18 @@
|
||||
package logger
|
||||
|
||||
import (
|
||||
"github.com/spf13/cobra"
|
||||
)
|
||||
|
||||
var cfg string
|
||||
|
||||
var loggerCmd = &cobra.Command{
|
||||
Use: "logger",
|
||||
Short: "Manage internal logger",
|
||||
}
|
||||
|
||||
func InitCmd(cmd *cobra.Command, config string) {
|
||||
cfg = config
|
||||
|
||||
cmd.AddCommand(loggerCmd)
|
||||
}
|
40
cmd/logger/rm.go
Normal file
40
cmd/logger/rm.go
Normal file
@ -0,0 +1,40 @@
|
||||
package logger
|
||||
|
||||
import (
|
||||
"log"
|
||||
|
||||
"git.cryptic.systems/fh-trier/go-flucky/pkg/config"
|
||||
"github.com/spf13/cobra"
|
||||
)
|
||||
|
||||
var rmLoggerCmd = &cobra.Command{
|
||||
Use: "rm",
|
||||
Short: "Remove internal logger",
|
||||
Args: cobra.ExactArgs(1),
|
||||
Aliases: []string{"remove"},
|
||||
Example: "flucky logger rm /var/log/flucky/temperature.log",
|
||||
Run: func(cmd *cobra.Command, args []string) {
|
||||
|
||||
// read configuration
|
||||
fc, err := config.Read(cfg)
|
||||
if err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
|
||||
err = fc.RemoveLogFile(args[0])
|
||||
if err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
|
||||
// save new configuration
|
||||
err = config.Write(fc, cfg)
|
||||
if err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
|
||||
},
|
||||
}
|
||||
|
||||
func init() {
|
||||
loggerCmd.AddCommand(rmLoggerCmd)
|
||||
}
|
@ -6,7 +6,6 @@ import (
|
||||
"os"
|
||||
|
||||
"git.cryptic.systems/fh-trier/go-flucky/pkg/cli"
|
||||
|
||||
"git.cryptic.systems/fh-trier/go-flucky/pkg/config"
|
||||
"github.com/spf13/cobra"
|
||||
)
|
||||
|
Reference in New Issue
Block a user