summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThorben Günther <admin@xenrox.net>2024-10-20 14:32:56 +0200
committerThorben Günther <admin@xenrox.net>2024-11-02 17:49:34 +0100
commit71149e36fae163523d81f0cf23da3a64129e0f33 (patch)
tree7f3e08d594d35a55e0ecf6670af873ece02dd765
parentMerge pull request 'chore(release-notes): version 4.0.1' (#310) from earl-war... (diff)
downloadforgejo-runner-71149e36fae163523d81f0cf23da3a64129e0f33.tar.xz
forgejo-runner-71149e36fae163523d81f0cf23da3a64129e0f33.zip
Add configurable logging level for jobs
This changes the default for JobLoggerLevel from "trace" to "info". Closes #298
-rw-r--r--internal/app/run/runner.go9
-rw-r--r--internal/pkg/config/config.example.yaml2
-rw-r--r--internal/pkg/config/config.go6
3 files changed, 16 insertions, 1 deletions
diff --git a/internal/app/run/runner.go b/internal/app/run/runner.go
index e8654b6..e774786 100644
--- a/internal/app/run/runner.go
+++ b/internal/app/run/runner.go
@@ -232,6 +232,15 @@ func (r *Runner) run(ctx context.Context, task *runnerv1.Task, reporter *report.
Inputs: inputs,
}
+ if r.cfg.Log.JobLevel != "" {
+ level, err := log.ParseLevel(r.cfg.Log.JobLevel)
+ if err != nil {
+ return err
+ }
+
+ runnerConfig.JobLoggerLevel = &level
+ }
+
rr, err := runner.New(runnerConfig)
if err != nil {
return err
diff --git a/internal/pkg/config/config.example.yaml b/internal/pkg/config/config.example.yaml
index 88bc2c6..20218ae 100644
--- a/internal/pkg/config/config.example.yaml
+++ b/internal/pkg/config/config.example.yaml
@@ -6,6 +6,8 @@
log:
# The level of logging, can be trace, debug, info, warn, error, fatal
level: info
+ # The level of logging for jobs, can be trace, debug, info, earn, error, fatal
+ job_level: info
runner:
# Where to store the registration result.
diff --git a/internal/pkg/config/config.go b/internal/pkg/config/config.go
index a1536b3..5ab177d 100644
--- a/internal/pkg/config/config.go
+++ b/internal/pkg/config/config.go
@@ -16,7 +16,8 @@ import (
// Log represents the configuration for logging.
type Log struct {
- Level string `yaml:"level"` // Level indicates the logging level.
+ Level string `yaml:"level"` // Level indicates the logging level.
+ JobLevel string `yaml:"job_level"` // JobLevel indicates the job logging level.
}
// Runner represents the configuration for the runner.
@@ -113,6 +114,9 @@ func LoadDefault(file string) (*Config, error) {
if cfg.Log.Level == "" {
cfg.Log.Level = "info"
}
+ if cfg.Log.JobLevel == "" {
+ cfg.Log.JobLevel = "info"
+ }
if cfg.Runner.File == "" {
cfg.Runner.File = ".runner"
}