1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
use consensus_types::common::Author;
use diem_logger::Schema;
use diem_types::block_info::Round;
use serde::Serialize;
#[derive(Schema)]
pub struct LogSchema {
event: LogEvent,
remote_peer: Option<Author>,
epoch: Option<u64>,
round: Option<Round>,
}
#[derive(Serialize)]
pub enum LogEvent {
CommitViaBlock,
CommitViaSync,
HelpPeerSync,
NewEpoch,
NewRound,
Propose,
ReceiveBlockRetrieval,
ReceiveEpochChangeProof,
ReceiveEpochRetrieval,
ReceiveMessageFromDifferentEpoch,
ReceiveProposal,
ReceiveSyncInfo,
ReceiveVote,
RetrieveBlock,
StateSync,
SyncToPeer,
Timeout,
Vote,
VoteNIL,
}
impl LogSchema {
pub fn new(event: LogEvent) -> Self {
Self {
event,
remote_peer: None,
epoch: None,
round: None,
}
}
}