molly-brown/logging.go

30 lines
529 B
Go

package main
import (
"net"
"os"
"strconv"
"strings"
"time"
)
type LogEntry struct {
Time time.Time
RemoteAddr net.Addr
RequestURL string
Status int
}
func writeLogEntry(fp *os.File, entry LogEntry) {
var line string
line = entry.Time.Format(time.RFC3339)
// Trim port from remote address
addr := entry.RemoteAddr.String()
addr = addr[0:strings.LastIndex(addr, ":")]
line += "\t" + addr
line += "\t" + strconv.Itoa(entry.Status)
line += "\t" + entry.RequestURL
line += "\n"
fp.WriteString(line)
}