package manifest type LogEntry struct { Timestamp int64 `json:"ts"` Level string `json:"level"` Event string `json:"event"` AssetID string `json:"asset_id,omitempty"` Album string `json:"album,omitempty"` Filename string `json:"filename,omitempty"` Size int64 `json:"size,omitempty"` Cloud string `json:"cloud,omitempty"` DurationMs int64 `json:"duration_ms,omitempty"` Message string `json:"message,omitempty"` } type LogWriter interface { Log(entry LogEntry) Close() } type noopLogWriter struct{} func (noopLogWriter) Log(LogEntry) { _ = struct{}{} } func (noopLogWriter) Close() { _ = struct{}{} } var NoopLogWriter LogWriter = noopLogWriter{} func LogPath(dir string) string { return dir + "/export.log" }