进出入完善组织机构并加入导入人员和机构功能
554325746@qq.com
2019-08-07 07a66e53d2b4126c2004870d81a379d8ef0071da
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
50
51
52
53
54
55
56
57
58
59
60
61
62
-module(lager_msg).
 
-export([new/4, new/5]).
-export([message/1]).
-export([timestamp/1]).
-export([datetime/1]).
-export([severity/1]).
-export([severity_as_int/1]).
-export([metadata/1]).
-export([destinations/1]).
 
-record(lager_msg,{
        destinations :: list(),
        metadata :: [tuple()],
        severity :: lager:log_level(),
        datetime :: {string(), string()},
        timestamp :: erlang:timestamp(),
        message :: list()
    }).
 
-opaque lager_msg() :: #lager_msg{}.
-export_type([lager_msg/0]).
 
%% create with provided timestamp, handy for testing mostly
-spec new(list(), erlang:timestamp(), lager:log_level(), [tuple()], list()) -> lager_msg().
new(Msg, Timestamp, Severity, Metadata, Destinations) ->
    {Date, Time} = lager_util:format_time(lager_util:maybe_utc(lager_util:localtime_ms(Timestamp))),
    #lager_msg{message=Msg, datetime={Date, Time}, timestamp=Timestamp, severity=Severity,
        metadata=Metadata, destinations=Destinations}.
 
-spec new(list(), lager:log_level(), [tuple()], list()) -> lager_msg().
new(Msg, Severity, Metadata, Destinations) ->
    Now = os:timestamp(),
    new(Msg, Now, Severity, Metadata, Destinations).
 
-spec message(lager_msg()) -> list().
message(Msg) ->
    Msg#lager_msg.message.
 
-spec timestamp(lager_msg()) -> erlang:timestamp().
timestamp(Msg) ->
    Msg#lager_msg.timestamp.
 
-spec datetime(lager_msg()) -> {string(), string()}.
datetime(Msg) ->
    Msg#lager_msg.datetime.
 
-spec severity(lager_msg()) -> lager:log_level().
severity(Msg) ->
    Msg#lager_msg.severity.
 
-spec severity_as_int(lager_msg()) -> lager:log_level_number().
severity_as_int(Msg) ->
    lager_util:level_to_num(Msg#lager_msg.severity).
 
-spec metadata(lager_msg()) -> [tuple()].
metadata(Msg) ->
    Msg#lager_msg.metadata.
 
-spec destinations(lager_msg()) -> list().
destinations(Msg) ->
    Msg#lager_msg.destinations.