Merge pull request #86 from appleboy/hidetoken
Fixed #85 Add hideToken func.
This commit is contained in:
commit
a918e55b6a
|
@ -58,6 +58,7 @@ log:
|
|||
access_level: "debug"
|
||||
error_log: "stderr" # stderr: output to console, or define log path like "log/error_log"
|
||||
error_level: "error"
|
||||
hide_token: true
|
||||
|
||||
stat:
|
||||
engine: "memory" # support memory, redis or boltdb
|
||||
|
|
|
@ -57,6 +57,7 @@ type SectionLog struct {
|
|||
AccessLevel string `yaml:"access_level"`
|
||||
ErrorLog string `yaml:"error_log"`
|
||||
ErrorLevel string `yaml:"error_level"`
|
||||
HideToken bool `yaml:"hide_token"`
|
||||
}
|
||||
|
||||
// SectionStat is sub seciont of config.
|
||||
|
@ -115,6 +116,7 @@ func BuildDefaultPushConf() ConfYaml {
|
|||
conf.Log.AccessLevel = "debug"
|
||||
conf.Log.ErrorLog = "stderr"
|
||||
conf.Log.ErrorLevel = "error"
|
||||
conf.Log.HideToken = true
|
||||
|
||||
conf.Stat.Engine = "memory"
|
||||
conf.Stat.Redis.Addr = "localhost:6379"
|
||||
|
|
|
@ -30,6 +30,7 @@ log:
|
|||
access_level: "debug"
|
||||
error_log: "stderr"
|
||||
error_level: "error"
|
||||
hide_token: true
|
||||
|
||||
stat:
|
||||
engine: "memory"
|
||||
|
|
|
@ -7,7 +7,7 @@ import (
|
|||
"github.com/Sirupsen/logrus"
|
||||
"github.com/gin-gonic/gin"
|
||||
"os"
|
||||
// "time"
|
||||
"strings"
|
||||
)
|
||||
|
||||
var (
|
||||
|
@ -181,6 +181,24 @@ func typeForPlatForm(platform int) string {
|
|||
}
|
||||
}
|
||||
|
||||
func hideToken(token string, markLen int) string {
|
||||
if len(token) == 0 {
|
||||
return ""
|
||||
}
|
||||
|
||||
if len(token) < markLen*2 {
|
||||
return strings.Repeat("*", len(token))
|
||||
}
|
||||
|
||||
start := token[len(token)-markLen:]
|
||||
end := token[0:markLen]
|
||||
|
||||
result := strings.Replace(token, start, strings.Repeat("*", markLen), -1)
|
||||
result = strings.Replace(result, end, strings.Repeat("*", markLen), -1)
|
||||
|
||||
return result
|
||||
}
|
||||
|
||||
// LogPush record user push request and server response.
|
||||
func LogPush(status, token string, req PushNotification, errPush error) {
|
||||
var plat, platColor, output string
|
||||
|
@ -193,6 +211,10 @@ func LogPush(status, token string, req PushNotification, errPush error) {
|
|||
errMsg = errPush.Error()
|
||||
}
|
||||
|
||||
if PushConf.Log.HideToken == true {
|
||||
token = hideToken(token, 10)
|
||||
}
|
||||
|
||||
log := &LogPushEntry{
|
||||
Type: status,
|
||||
Platform: plat,
|
||||
|
|
|
@ -88,3 +88,9 @@ func TestPlatFormColor(t *testing.T) {
|
|||
assert.Equal(t, yellow, colorForPlatForm(PlatFormAndroid))
|
||||
assert.Equal(t, reset, colorForPlatForm(1000000))
|
||||
}
|
||||
|
||||
func TestHideToken(t *testing.T) {
|
||||
assert.Equal(t, "", hideToken("", 2))
|
||||
assert.Equal(t, "**345678**", hideToken("1234567890", 2))
|
||||
assert.Equal(t, "*****", hideToken("12345", 10))
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue