feat: add trigger for fetching logs properties

This commit is contained in:
Jose Diaz-Gonzalez
2021-01-23 13:39:29 -05:00
parent ccbe2c719a
commit 815b839eeb
5 changed files with 38 additions and 2 deletions

View File

@@ -1,5 +1,5 @@
SUBCOMMANDS = subcommands/failed subcommands/report subcommands/set subcommands/vector-logs subcommands/vector-start subcommands/vector-stop
TRIGGERS = triggers/docker-args-process-deploy triggers/install triggers/post-delete triggers/report
TRIGGERS = triggers/docker-args-process-deploy triggers/install triggers/logs-get-property triggers/post-delete triggers/report
BUILD = commands subcommands triggers
PLUGIN_NAME = logs

View File

@@ -23,6 +23,10 @@ func main() {
err = logs.TriggerDockerArgsProcessDeploy(appName)
case "install":
err = logs.TriggerInstall()
case "logs-get-property":
appName := flag.Arg(0)
property := flag.Arg(1)
err = logs.TriggerLogsGetProperty(appName, property)
case "post-delete":
appName := flag.Arg(0)
err = logs.TriggerPostDelete(appName)

View File

@@ -1,6 +1,7 @@
package logs
import (
"errors"
"fmt"
"io/ioutil"
"os"
@@ -56,6 +57,21 @@ func TriggerInstall() error {
return nil
}
// TriggerLogsGetProperty writes the logs key to stdout for a given app container
func TriggerLogsGetProperty(appName string, key string) error {
if key != "max-size" {
return errors.New("Invalid logs property specified")
}
value := common.PropertyGet("logs", appName, "max-size")
if value == "" {
value = common.PropertyGetDefault("logs", "--global", "max-size", MaxSize)
}
fmt.Println(value)
return nil
}
// TriggerPostDelete destroys the network property for a given app container
func TriggerPostDelete(appName string) error {
return common.PropertyDestroy("logs", appName)