Codebase list golang-github-jedisct1-dlog / upstream/0.6
New upstream version 0.6 Eric Dorland 3 years ago
3 changed file(s) with 28 addition(s) and 15 deletion(s). Raw diff Collapse all Expand all
1414
1515 type globals struct {
1616 sync.Mutex
17 logLevel Severity
18 useSyslog *bool
19 appName string
20 syslogFacility string
21 systemLogger *systemLogger
22 fileName *string
23 outFd *os.File
24 lastMessage string
25 lastOccurrence time.Time
26 occurrences uint64
17 logLevel Severity
18 useSyslog *bool
19 truncateLogFile *bool
20 appName string
21 syslogFacility string
22 systemLogger *systemLogger
23 fileName *string
24 outFd *os.File
25 lastMessage string
26 lastOccurrence time.Time
27 occurrences uint64
2728 }
2829
2930 var (
173174 _globals.Unlock()
174175 }
175176
177 func TruncateLogFile(value bool) {
178 _globals.Lock()
179 _globals.truncateLogFile = &value
180 _globals.Unlock()
181 }
182
176183 func UseLogFile(fileName string) {
177184 _globals.Lock()
178185 _globals.fileName = &fileName
179186 _globals.Unlock()
180187 }
181188
182 func GetFileDescriptor() (*os.File) {
189 func GetFileDescriptor() *os.File {
183190 _globals.Lock()
184191 createFileDescriptor()
185192 _globals.Unlock()
194201
195202 func createFileDescriptor() {
196203 if _globals.fileName != nil && len(*_globals.fileName) > 0 && _globals.outFd == nil {
197 outFd, err := os.OpenFile(*_globals.fileName, os.O_WRONLY|os.O_APPEND|os.O_CREATE, 0644)
204 mode := os.O_WRONLY | os.O_CREATE
205 if _globals.truncateLogFile != nil && *_globals.truncateLogFile {
206 mode |= os.O_TRUNC
207 } else {
208 mode |= os.O_APPEND
209 }
210 outFd, err := os.OpenFile(*_globals.fileName, mode, 0644)
198211 if err == nil {
199212 _globals.outFd = outFd
200213 }
33
44 require (
55 github.com/hashicorp/go-syslog v1.0.0
6 golang.org/x/sys v0.0.0-20190909082730-f460065e899a
6 golang.org/x/sys v0.0.0-20200602225109-6fdc65e7d980
77 )
00 github.com/hashicorp/go-syslog v1.0.0 h1:KaodqZuhUoZereWVIYmpUgZysurB1kBLX2j0MwMrUAE=
11 github.com/hashicorp/go-syslog v1.0.0/go.mod h1:qPfqrKkXGihmCqbJM2mZgkZGvKG1dFdvsLplgctolz4=
2 golang.org/x/sys v0.0.0-20190909082730-f460065e899a h1:mIzbOulag9/gXacgxKlFVwpCOWSfBT3/pDyyCwGA9as=
3 golang.org/x/sys v0.0.0-20190909082730-f460065e899a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
2 golang.org/x/sys v0.0.0-20200602225109-6fdc65e7d980 h1:OjiUf46hAmXblsZdnoSXsEUSKU8r1UEzcL5RVZ4gO9Y=
3 golang.org/x/sys v0.0.0-20200602225109-6fdc65e7d980/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=