[tor-commits] [obfs4/master] Add a prolog/epilog to the logging that always gets logged.
yawning at torproject.org
yawning at torproject.org
Wed Sep 3 11:58:02 UTC 2014
commit fb13cf124149ebb94f400f718c9ae22dda341bdd
Author: Yawning Angel <yawning at torproject.org>
Date: Wed Sep 3 11:55:16 2014 +0000
Add a prolog/epilog to the logging that always gets logged.
The prolog prints the version as soon as logging is enabled, but before
the pluggable transport configuration is done. The epilog is printed as
the code returns from main, as long as either client or server pt
configuration succeded.
---
obfs4proxy/log.go | 7 +++++++
obfs4proxy/obfs4proxy.go | 14 ++++++++------
2 files changed, 15 insertions(+), 6 deletions(-)
diff --git a/obfs4proxy/log.go b/obfs4proxy/log.go
index 22f345c..5440596 100644
--- a/obfs4proxy/log.go
+++ b/obfs4proxy/log.go
@@ -41,6 +41,13 @@ const (
var logLevel = levelInfo
+func noticef(format string, a ...interface{}) {
+ if enableLogging {
+ msg := fmt.Sprintf(format, a...)
+ log.Print("[NOTICE]: " + msg)
+ }
+}
+
func errorf(format string, a ...interface{}) {
if enableLogging && logLevel >= levelError {
msg := fmt.Sprintf(format, a...)
diff --git a/obfs4proxy/obfs4proxy.go b/obfs4proxy/obfs4proxy.go
index 7e8aad0..cf8043a 100644
--- a/obfs4proxy/obfs4proxy.go
+++ b/obfs4proxy/obfs4proxy.go
@@ -383,9 +383,8 @@ func ptInitializeLogging(enable bool) error {
return nil
}
-func version() {
- fmt.Printf("obfs4proxy-%s\n", obfs4proxyVersion)
- os.Exit(0)
+func getVersion() string {
+ return fmt.Sprintf("obfs4proxy-%s", obfs4proxyVersion)
}
func main() {
@@ -398,7 +397,8 @@ func main() {
flag.Parse()
if *showVer {
- version()
+ fmt.Printf("%s\n", getVersion())
+ os.Exit(0)
}
if err := setLogLevel(*logLevelStr); err != nil {
log.Fatalf("[ERROR]: failed to set log level: %s", err)
@@ -418,6 +418,8 @@ func main() {
}
if err = ptInitializeLogging(enableLogging); err != nil {
log.Fatalf("[ERROR]: %s - failed to initialize logging", execName)
+ } else {
+ noticef("%s - launched", getVersion())
}
if isClient {
infof("%s - initializing client transport listeners", execName)
@@ -432,9 +434,9 @@ func main() {
os.Exit(-1)
}
- infof("%s - launched and accepting connections", execName)
+ infof("%s - accepting connections", execName)
defer func() {
- infof("%s - terminated", execName)
+ noticef("%s - terminated", execName)
}()
// At this point, the pt config protocol is finished, and incoming
More information about the tor-commits
mailing list