Last change
on this file since 822 was 822, checked in by yakumo.izuru, 22 months ago |
Prefer immortal.run over runit and rc.d, use vendored modules
for convenience.
Signed-off-by: Izuru Yakumo <yakumo.izuru@…>
|
File size:
867 bytes
|
Rev | Line | |
---|
[822] | 1 | // Copyright 2020 The Libc Authors. All rights reserved.
|
---|
| 2 | // Use of this source code is governed by a BSD-style
|
---|
| 3 | // license that can be found in the LICENSE file.
|
---|
| 4 |
|
---|
| 5 | //go:build libc.dmesg
|
---|
| 6 | // +build libc.dmesg
|
---|
| 7 |
|
---|
| 8 | package libc // import "modernc.org/libc"
|
---|
| 9 |
|
---|
| 10 | import (
|
---|
| 11 | "fmt"
|
---|
| 12 | "os"
|
---|
| 13 | "path/filepath"
|
---|
| 14 | "strings"
|
---|
| 15 | "time"
|
---|
| 16 | )
|
---|
| 17 |
|
---|
| 18 | const dmesgs = true
|
---|
| 19 |
|
---|
| 20 | var (
|
---|
| 21 | pid = fmt.Sprintf("[%v %v] ", os.Getpid(), filepath.Base(os.Args[0]))
|
---|
| 22 | logf *os.File
|
---|
| 23 | )
|
---|
| 24 |
|
---|
| 25 | func init() {
|
---|
| 26 | var err error
|
---|
| 27 | if logf, err = os.OpenFile("/tmp/libc.log", os.O_APPEND|os.O_CREATE|os.O_WRONLY|os.O_SYNC, 0644); err != nil {
|
---|
| 28 | panic(err.Error())
|
---|
| 29 | }
|
---|
| 30 |
|
---|
| 31 | dmesg("%v", time.Now())
|
---|
| 32 | }
|
---|
| 33 |
|
---|
| 34 | func dmesg(s string, args ...interface{}) {
|
---|
| 35 | if s == "" {
|
---|
| 36 | s = strings.Repeat("%v ", len(args))
|
---|
| 37 | }
|
---|
| 38 | s = fmt.Sprintf(pid+s, args...)
|
---|
| 39 | switch {
|
---|
| 40 | case len(s) != 0 && s[len(s)-1] == '\n':
|
---|
| 41 | fmt.Fprint(logf, s)
|
---|
| 42 | default:
|
---|
| 43 | fmt.Fprintln(logf, s)
|
---|
| 44 | }
|
---|
| 45 | }
|
---|
Note:
See
TracBrowser
for help on using the repository browser.