Compare commits
No commits in common. "d214fff28a949762e8f713729005aba2d580ee1f" and "41e0a021f66b12a112aba3325da88a42d1d497ca" have entirely different histories.
d214fff28a
...
41e0a021f6
@ -15,9 +15,9 @@ docker run \
|
||||
--name reqlog \
|
||||
--restart always \
|
||||
-d \
|
||||
-p 8080:8080 \
|
||||
-p 3000:3000 \
|
||||
-v $(pwd)/requests.log:/requests.log \
|
||||
git.roeber.dev/jon/reqlog:v0.0.2
|
||||
git.roeber.dev/jon/reqlog:v0.0.1
|
||||
```
|
||||
|
||||
4. Test:
|
||||
@ -25,7 +25,7 @@ docker run \
|
||||
```bash
|
||||
curl \
|
||||
-X POST \
|
||||
http://localhost:8080/ \
|
||||
http://localhost:3000/ \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"temp": 98.6}'
|
||||
```
|
||||
|
13
main.go
13
main.go
@ -30,11 +30,8 @@ func post(w http.ResponseWriter, r *http.Request) {
|
||||
w.Write([]byte(err.Error()))
|
||||
return
|
||||
}
|
||||
|
||||
dump := logString(r.RemoteAddr, reqDump)
|
||||
|
||||
// log to stdout
|
||||
fmt.Print(dump)
|
||||
fmt.Print(logString(reqDump))
|
||||
|
||||
// log to logfile
|
||||
lf, err := os.OpenFile(*logFile, os.O_CREATE | os.O_APPEND | os.O_WRONLY, 0644)
|
||||
@ -44,16 +41,16 @@ func post(w http.ResponseWriter, r *http.Request) {
|
||||
w.Write([]byte(fmt.Sprintf("failed to open log file: %v", err)))
|
||||
}
|
||||
defer lf.Close()
|
||||
lf.WriteString(dump)
|
||||
lf.WriteString(logString(reqDump))
|
||||
|
||||
// echo log message as response
|
||||
w.WriteHeader(200)
|
||||
w.Write([]byte(dump))
|
||||
w.Write([]byte(logString(reqDump)))
|
||||
}
|
||||
|
||||
func logString(senderIP string, reqDump []byte) string {
|
||||
func logString(reqDump []byte) string {
|
||||
var sb strings.Builder
|
||||
sb.WriteString(fmt.Sprintf("Received request from %v at %v:\n\n", senderIP, time.Now()))
|
||||
sb.WriteString(fmt.Sprintf("Received request at %v:\n\n", time.Now()))
|
||||
sb.Write(reqDump)
|
||||
sb.WriteString("\n\n")
|
||||
return sb.String()
|
||||
|
Loading…
x
Reference in New Issue
Block a user