Add PT Event Logger

This commit is contained in:
Shelikhoo 2021-12-13 15:39:59 +00:00
parent 36ca610d6b
commit ac64d17705
No known key found for this signature in database
GPG key ID: C4D5E79D22B25316

View file

@ -0,0 +1,43 @@
package snowflake_client
import (
"fmt"
pt "git.torproject.org/pluggable-transports/goptlib.git"
"git.torproject.org/pluggable-transports/snowflake.git/v2/common/event"
)
func NewPTEventLogger() event.SnowflakeEventReceiver {
return &ptEventLogger{}
}
type ptEventLogger struct {
}
func (p ptEventLogger) OnNewSnowflakeEvent(e event.SnowflakeEvent) {
switch e.(type) {
case event.EventOnOfferCreated:
e := e.(event.EventOnOfferCreated)
if e.Error != nil {
pt.Log(pt.LogSeverityError, fmt.Sprintf("offer creation failure %v", e.Error.Error()))
} else {
pt.Log(pt.LogSeverityNotice, fmt.Sprintf("offer created %v", e.WebRTCLocalDescription))
}
case event.EventOnBrokerRendezvous:
e := e.(event.EventOnBrokerRendezvous)
if e.Error != nil {
pt.Log(pt.LogSeverityError, fmt.Sprintf("broker failure %v", e.Error.Error()))
} else {
pt.Log(pt.LogSeverityNotice, fmt.Sprintf("broker rendezvous peer %v", e.WebRTCRemoteDescription))
}
case event.EventOnSnowflakeConnected:
pt.Log(pt.LogSeverityNotice, fmt.Sprintf("connected"))
case event.EventOnSnowflakeConnectionFailed:
e := e.(event.EventOnSnowflakeConnectionFailed)
pt.Log(pt.LogSeverityError, fmt.Sprintf("connection failed %v", e.Error.Error()))
}
}