aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Crute <mike@crute.us>2022-05-21 23:17:37 -0700
committerMike Crute <mike@crute.us>2022-05-21 23:17:37 -0700
commita936b621b2b124eca7b4cefdb9d731cc06b6b18b (patch)
treef850d124b9eb775d2fa0a4c34921131af5c17bcc
parentce36372cf812ae0d5e41584b865d99bdc22756ad (diff)
downloadgolib-a936b621b2b124eca7b4cefdb9d731cc06b6b18b.tar.bz2
golib-a936b621b2b124eca7b4cefdb9d731cc06b6b18b.tar.xz
golib-a936b621b2b124eca7b4cefdb9d731cc06b6b18b.zip
core: unify logging interfacesv0.3.7
-rw-r--r--crypto/acme/autocert/autocert.go7
-rw-r--r--log/interface.go23
-rw-r--r--service/app_runner.go11
3 files changed, 29 insertions, 12 deletions
diff --git a/crypto/acme/autocert/autocert.go b/crypto/acme/autocert/autocert.go
index f99c36e..923b2fb 100644
--- a/crypto/acme/autocert/autocert.go
+++ b/crypto/acme/autocert/autocert.go
@@ -6,14 +6,11 @@ import (
6 "fmt" 6 "fmt"
7 "net" 7 "net"
8 8
9 "code.crute.us/mcrute/golib/log"
9 "code.crute.us/mcrute/golib/service" 10 "code.crute.us/mcrute/golib/service"
10 "golang.org/x/net/idna" 11 "golang.org/x/net/idna"
11) 12)
12 13
13type InfoReporter interface {
14 Info(...interface{})
15}
16
17type CertProvider interface { 14type CertProvider interface {
18 GetCertificate(*tls.ClientHelloInfo) (*tls.Certificate, error) 15 GetCertificate(*tls.ClientHelloInfo) (*tls.Certificate, error)
19 Listener() net.Listener 16 Listener() net.Listener
@@ -23,7 +20,7 @@ type CertProvider interface {
23type PrimingCertProvider interface { 20type PrimingCertProvider interface {
24 CertProvider 21 CertProvider
25 PrimeCache() error 22 PrimeCache() error
26 PrimingReporter(InfoReporter) service.RunnerFunc 23 PrimingReporter(log.LeveledLogger) service.RunnerFunc
27} 24}
28 25
29type ACMEHostList struct { 26type ACMEHostList struct {
diff --git a/log/interface.go b/log/interface.go
new file mode 100644
index 0000000..5949070
--- /dev/null
+++ b/log/interface.go
@@ -0,0 +1,23 @@
1package log
2
3type BasicLogger interface {
4 Print(i ...interface{})
5 Printf(format string, args ...interface{})
6 Fatal(i ...interface{})
7 Fatalf(format string, args ...interface{})
8 Panic(i ...interface{})
9 Panicf(format string, args ...interface{})
10}
11
12type LeveledLogger interface {
13 BasicLogger
14
15 Debug(i ...interface{})
16 Debugf(format string, args ...interface{})
17 Info(i ...interface{})
18 Infof(format string, args ...interface{})
19 Warn(i ...interface{})
20 Warnf(format string, args ...interface{})
21 Error(i ...interface{})
22 Errorf(format string, args ...interface{})
23}
diff --git a/service/app_runner.go b/service/app_runner.go
index 61942b2..a960e70 100644
--- a/service/app_runner.go
+++ b/service/app_runner.go
@@ -7,18 +7,15 @@ import (
7 "os/signal" 7 "os/signal"
8 "sync" 8 "sync"
9 "syscall" 9 "syscall"
10)
11 10
12type AppRunnerLogger interface { 11 "code.crute.us/mcrute/golib/log"
13 Info(...interface{}) 12)
14 Error(...interface{})
15}
16 13
17type SyncRunnerFunc func() error 14type SyncRunnerFunc func() error
18type RunnerFunc func(context.Context, *sync.WaitGroup) error 15type RunnerFunc func(context.Context, *sync.WaitGroup) error
19 16
20type AppRunner struct { 17type AppRunner struct {
21 Logger AppRunnerLogger 18 Logger log.LeveledLogger
22 initJobs []SyncRunnerFunc // Jobs that run synchronously before other jobs 19 initJobs []SyncRunnerFunc // Jobs that run synchronously before other jobs
23 jobs []RunnerFunc // Normal jobs 20 jobs []RunnerFunc // Normal jobs
24 backgroundJobs []RunnerFunc // Jobs that can be disabled 21 backgroundJobs []RunnerFunc // Jobs that can be disabled
@@ -29,7 +26,7 @@ type AppRunner struct {
29 ctxCancel context.CancelFunc 26 ctxCancel context.CancelFunc
30} 27}
31 28
32func NewAppRunner(ctx context.Context, logger AppRunnerLogger) *AppRunner { 29func NewAppRunner(ctx context.Context, logger log.LeveledLogger) *AppRunner {
33 r := &AppRunner{ 30 r := &AppRunner{
34 initJobs: []SyncRunnerFunc{}, 31 initJobs: []SyncRunnerFunc{},
35 jobs: []RunnerFunc{}, 32 jobs: []RunnerFunc{},