X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/dfb995ab9ea0f1d8808c812870db717164ac95f4..f308830adff32b6cccd7e0720dec20c42a1bed60:/services/ws/event.go?ds=sidebyside diff --git a/services/ws/event.go b/services/ws/event.go index 77acf4496f..0e414a33aa 100644 --- a/services/ws/event.go +++ b/services/ws/event.go @@ -1,8 +1,11 @@ +// Copyright (C) The Arvados Authors. All rights reserved. +// +// SPDX-License-Identifier: AGPL-3.0 + package main import ( "database/sql" - "log" "sync" "time" @@ -18,11 +21,13 @@ type eventSink interface { type eventSource interface { NewSink() eventSink DB() *sql.DB + DBHealth() error } type event struct { LogID uint64 Received time.Time + Ready time.Time Serial uint64 db *sql.DB @@ -42,21 +47,22 @@ func (e *event) Detail() *arvados.Log { } var logRow arvados.Log var propYAML []byte - e.err = e.db.QueryRow(`SELECT id, uuid, object_uuid, COALESCE(object_owner_uuid,''), COALESCE(event_type,''), created_at, properties FROM logs WHERE id = $1`, e.LogID).Scan( + e.err = e.db.QueryRow(`SELECT id, uuid, object_uuid, COALESCE(object_owner_uuid,''), COALESCE(event_type,''), event_at, created_at, properties FROM logs WHERE id = $1`, e.LogID).Scan( &logRow.ID, &logRow.UUID, &logRow.ObjectUUID, &logRow.ObjectOwnerUUID, &logRow.EventType, + &logRow.EventAt, &logRow.CreatedAt, &propYAML) if e.err != nil { - log.Printf("retrieving log row %d: %s", e.LogID, e.err) + logger(nil).WithField("LogID", e.LogID).WithError(e.err).Error("QueryRow failed") return nil } e.err = yaml.Unmarshal(propYAML, &logRow.Properties) if e.err != nil { - log.Printf("decoding yaml for log row %d: %s", e.LogID, e.err) + logger(nil).WithField("LogID", e.LogID).WithError(e.err).Error("yaml decode failed") return nil } e.logRow = &logRow