tsweb: rename AccessLogRecord's When to Time

This change makes our access log record more consistent with the
new log/tslog package formatting of "time". Note that we can
change slog itself to call "time" "when" but we're chosing
to make this breaking change to be consistent with the std lib's
defaults.

Updates tailscale/corp#17071

Signed-off-by: Marwan Sulaiman <marwan@tailscale.com>
This commit is contained in:
Marwan Sulaiman 2024-05-21 13:34:27 -04:00 committed by Marwan Sulaiman
parent 0380cbc90d
commit 7e357e1636
3 changed files with 26 additions and 26 deletions

View File

@ -12,7 +12,7 @@
// AccessLogRecord is a record of one HTTP request served.
type AccessLogRecord struct {
// Timestamp at which request processing started.
When time.Time `json:"when"`
Time time.Time `json:"time"`
// Time it took to finish processing the request. It does not
// include the entire lifetime of the underlying connection in
// cases like connection hijacking, only the lifetime of the HTTP
@ -55,8 +55,8 @@ type AccessLogRecord struct {
// String returns m as a JSON string.
func (m AccessLogRecord) String() string {
if m.When.IsZero() {
m.When = time.Now()
if m.Time.IsZero() {
m.Time = time.Now()
}
var buf strings.Builder
json.NewEncoder(&buf).Encode(m)

View File

@ -299,7 +299,7 @@ type retHandler struct {
// ServeHTTP implements the http.Handler interface.
func (h retHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
msg := AccessLogRecord{
When: h.opts.Now(),
Time: h.opts.Now(),
RemoteAddr: r.RemoteAddr,
Proto: r.Proto,
TLS: r.TLS != nil,
@ -371,7 +371,7 @@ func (h retHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
lw.code = 200
}
msg.Seconds = h.opts.Now().Sub(msg.When).Seconds()
msg.Seconds = h.opts.Now().Sub(msg.Time).Seconds()
msg.Code = lw.code
msg.Bytes = lw.bytes

View File

@ -87,7 +87,7 @@ func TestStdHandler(t *testing.T) {
r: req(bgCtx, "http://example.com/"),
wantCode: 200,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
TLS: false,
@ -104,7 +104,7 @@ func TestStdHandler(t *testing.T) {
r: req(bgCtx, "http://example.com/"),
wantCode: 200,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
TLS: false,
@ -121,7 +121,7 @@ func TestStdHandler(t *testing.T) {
r: req(bgCtx, "http://example.com/foo"),
wantCode: 404,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
Host: "example.com",
@ -137,7 +137,7 @@ func TestStdHandler(t *testing.T) {
r: req(bgCtx, "http://example.com/foo"),
wantCode: 404,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
Host: "example.com",
@ -153,7 +153,7 @@ func TestStdHandler(t *testing.T) {
r: req(bgCtx, "http://example.com/foo"),
wantCode: 404,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
Host: "example.com",
@ -171,7 +171,7 @@ func TestStdHandler(t *testing.T) {
r: req(RequestIDKey.WithValue(bgCtx, exampleRequestID), "http://example.com/foo"),
wantCode: 404,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
Host: "example.com",
@ -190,7 +190,7 @@ func TestStdHandler(t *testing.T) {
r: req(bgCtx, "http://example.com/foo"),
wantCode: 404,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
Host: "example.com",
@ -208,7 +208,7 @@ func TestStdHandler(t *testing.T) {
r: req(RequestIDKey.WithValue(bgCtx, exampleRequestID), "http://example.com/foo"),
wantCode: 404,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
Host: "example.com",
@ -227,7 +227,7 @@ func TestStdHandler(t *testing.T) {
r: req(bgCtx, "http://example.com/foo"),
wantCode: 500,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
Host: "example.com",
@ -245,7 +245,7 @@ func TestStdHandler(t *testing.T) {
r: req(RequestIDKey.WithValue(bgCtx, exampleRequestID), "http://example.com/foo"),
wantCode: 500,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
Host: "example.com",
@ -264,7 +264,7 @@ func TestStdHandler(t *testing.T) {
r: req(bgCtx, "http://example.com/foo"),
wantCode: 500,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
Host: "example.com",
@ -282,7 +282,7 @@ func TestStdHandler(t *testing.T) {
r: req(RequestIDKey.WithValue(bgCtx, exampleRequestID), "http://example.com/foo"),
wantCode: 500,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
Host: "example.com",
@ -301,7 +301,7 @@ func TestStdHandler(t *testing.T) {
r: req(bgCtx, "http://example.com/foo"),
wantCode: 500,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
Host: "example.com",
@ -319,7 +319,7 @@ func TestStdHandler(t *testing.T) {
r: req(RequestIDKey.WithValue(bgCtx, exampleRequestID), "http://example.com/foo"),
wantCode: 500,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
Host: "example.com",
@ -338,7 +338,7 @@ func TestStdHandler(t *testing.T) {
r: req(bgCtx, "http://example.com/foo"),
wantCode: 200,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
Host: "example.com",
@ -355,7 +355,7 @@ func TestStdHandler(t *testing.T) {
r: req(RequestIDKey.WithValue(bgCtx, exampleRequestID), "http://example.com/foo"),
wantCode: 200,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
Host: "example.com",
@ -373,7 +373,7 @@ func TestStdHandler(t *testing.T) {
r: req(bgCtx, "http://example.com/foo"),
wantCode: 200,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
Host: "example.com",
@ -390,7 +390,7 @@ func TestStdHandler(t *testing.T) {
r: req(bgCtx, "http://example.com/foo"),
wantCode: 200,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
Host: "example.com",
@ -412,7 +412,7 @@ func TestStdHandler(t *testing.T) {
r: req(bgCtx, "http://example.com/foo"),
wantCode: 200,
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
@ -432,7 +432,7 @@ func TestStdHandler(t *testing.T) {
http.Error(w, e.Msg, 200)
},
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
TLS: false,
@ -455,7 +455,7 @@ func TestStdHandler(t *testing.T) {
http.Error(w, fmt.Sprintf("%s with request ID %s", e.Msg, requestID), 200)
},
wantLog: AccessLogRecord{
When: startTime,
Time: startTime,
Seconds: 1.0,
Proto: "HTTP/1.1",
TLS: false,