blob: aede08272124cdcd760386226cfa4b7c02599699 [file] [log] [blame]
// Copyright 2022 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
/* eslint-disable @typescript-eslint/naming-convention */
export interface FfxLogData {
data: PossibleDatas,
timestamp: number,
version: number,
}
interface PossibleDatas {
TargetLog?: LogData,
FfxEvent?: FfxEventData,
MalformedTargetLog?: string;
SymbolizedTargetLog?: [LogData, string];
ViewerEvent?: string;
}
export type FfxEventData = 'TargetDisconnected' | 'LoggingStarted';
export interface LogData {
metadata: LogMetadata,
moniker: string,
payload: LogPayload,
}
export interface LogMetadata {
errors: Array<any>,
component_url: string,
timestamp: number,
severity: string,
tags: Array<string> | undefined | null,
pid: number | undefined | null,
tid: number | undefined | null,
file: string | undefined | null,
line: number | undefined | null,
}
export interface LogPayload {
root: PayloadRoot;
}
interface PayloadRoot {
message: LogMessage | undefined | null,
keys: Record<string, any> | undefined | null,
printf: LogPrintf | undefined | null,
}
interface LogMessage {
value: string
}
interface LogPrintf {
format: string,
args: Array<any>,
}