Coverage Report

Created: 2026-09-16 10:57

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
be/src/common/logging.h
Line
Count
Source
1
// Licensed to the Apache Software Foundation (ASF) under one
2
// or more contributor license agreements.  See the NOTICE file
3
// distributed with this work for additional information
4
// regarding copyright ownership.  The ASF licenses this file
5
// to you under the Apache License, Version 2.0 (the
6
// "License"); you may not use this file except in compliance
7
// with the License.  You may obtain a copy of the License at
8
//
9
//   http://www.apache.org/licenses/LICENSE-2.0
10
//
11
// Unless required by applicable law or agreed to in writing,
12
// software distributed under the License is distributed on an
13
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
// KIND, either express or implied.  See the License for the
15
// specific language governing permissions and limitations
16
// under the License.
17
18
#pragma once
19
20
#include <memory>
21
22
// GLOG defines this based on the system but doesn't check if it's already
23
// been defined.  undef it first to avoid warnings.
24
// glog MUST be included before gflags.  Instead of including them,
25
// our files should include this file instead.
26
#undef _XOPEN_SOURCE
27
// This is including a glog internal file.  We want this to expose the
28
// function to get the stack trace.
29
#include <glog/logging.h> // IWYU pragma: export
30
#undef MutexLock
31
32
// Define VLOG levels.  We want display per-row info less than per-file which
33
// is less than per-query.  For now per-connection is the same as per-query.
34
#define VLOG_CONNECTION VLOG(1)
35
18.4E
#define VLOG_RPC VLOG(8)
36
18.4E
#define VLOG_QUERY VLOG(1)
37
18.4E
#define VLOG_FILE VLOG(2)
38
18.4E
#define VLOG_ROW VLOG(10)
39
0
#define VLOG_PROGRESS VLOG(2)
40
18.4E
#define VLOG_TRACE VLOG(10)
41
18.4E
#define VLOG_DEBUG VLOG(7)
42
28.4k
#define VLOG_NOTICE VLOG(3)
43
10.7k
#define VLOG_CRITICAL VLOG(1)
44
45
#define VLOG_CONNECTION_IS_ON VLOG_IS_ON(1)
46
#define VLOG_RPC_IS_ON VLOG_IS_ON(8)
47
#define VLOG_QUERY_IS_ON VLOG_IS_ON(1)
48
4.17k
#define VLOG_FILE_IS_ON VLOG_IS_ON(2)
49
#define VLOG_ROW_IS_ON VLOG_IS_ON(10)
50
1.19M
#define VLOG_TRACE_IS_ON VLOG_IS_ON(10)
51
131k
#define VLOG_DEBUG_IS_ON VLOG_IS_ON(7)
52
#define VLOG_NOTICE_IS_ON VLOG_IS_ON(3)
53
0
#define VLOG_CRITICAL_IS_ON VLOG_IS_ON(1)
54
55
/// Define a wrapper around DCHECK for strongly typed enums that print a useful error
56
/// message on failure.
57
#define DCHECK_ENUM_EQ(a, b)                                                 \
58
    DCHECK(a == b) << "[ " #a " = " << static_cast<int>(a) << " , " #b " = " \
59
                   << static_cast<int>(b) << " ]"
60
61
#include <fmt/format.h>
62
63
#include <string>
64
65
namespace doris {
66
67
// TaggableLogger::tag only needs these declarations; TUs that actually log a
68
// TUniqueId/PUniqueId have the full types from their own includes.
69
class TUniqueId;
70
class PUniqueId;
71
std::string print_id(const TUniqueId& id);
72
std::string print_id(const PUniqueId& id);
73
74
// glog doesn't allow multiple invocations of InitGoogleLogging. This method conditionally
75
// calls InitGoogleLogging only if it hasn't been called before.
76
bool init_glog(const char* basename);
77
78
// Shuts down the google logging library. Call before exit to ensure that log files are
79
// flushed. May only be called once.
80
void shutdown_logging();
81
82
void update_logging(const std::string& name, const std::string& value);
83
84
class TaggableLogger {
85
public:
86
    TaggableLogger(const char* file, int line, google::LogSeverity severity)
87
1.17M
            : _msg(file, line, severity) {}
88
89
    template <typename... Args>
90
1.17M
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
1.17M
        if constexpr (sizeof...(args) == 0) {
92
564k
            _msg.stream() << fmt;
93
613k
        } else {
94
613k
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
613k
        }
96
1.17M
        return *this;
97
1.17M
    }
_ZN5doris14TaggableLoggerclIJRSt17basic_string_viewIcSt11char_traitsIcEEEEERS0_RKS5_DpOT_
Line
Count
Source
90
21.4k
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
21.4k
        } else {
94
21.4k
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
21.4k
        }
96
21.4k
        return *this;
97
21.4k
    }
_ZN5doris14TaggableLoggerclIJEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Line
Count
Source
90
564k
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
564k
        if constexpr (sizeof...(args) == 0) {
92
564k
            _msg.stream() << fmt;
93
        } else {
94
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
        }
96
564k
        return *this;
97
564k
    }
_ZN5doris14TaggableLoggerclIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Line
Count
Source
90
86.2k
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
86.2k
        } else {
94
86.2k
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
86.2k
        }
96
86.2k
        return *this;
97
86.2k
    }
_ZN5doris14TaggableLoggerclIJRmRhEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Line
Count
Source
90
3
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
3
        } else {
94
3
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
3
        }
96
3
        return *this;
97
3
    }
_ZN5doris14TaggableLoggerclIJRmRKhEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Line
Count
Source
90
3
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
3
        } else {
94
3
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
3
        }
96
3
        return *this;
97
3
    }
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERiS7_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
_ZN5doris14TaggableLoggerclIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES7_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Line
Count
Source
90
1
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
1
        } else {
94
1
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
1
        }
96
1
        return *this;
97
1
    }
_ZN5doris14TaggableLoggerclIJRlS2_S2_RmEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Line
Count
Source
90
349
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
349
        } else {
94
349
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
349
        }
96
349
        return *this;
97
349
    }
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERiS8_S9_RjRlSB_SB_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERjRlS9_S9_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
_ZN5doris14TaggableLoggerclIJRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERiRlSA_lRjSA_SA_SA_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Line
Count
Source
90
349
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
349
        } else {
94
349
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
349
        }
96
349
        return *this;
97
349
    }
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRlS2_S2_RNS_6StatusEEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
_ZN5doris14TaggableLoggerclIJRlS2_S2_S2_RKmEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Line
Count
Source
90
349
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
349
        } else {
94
349
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
349
        }
96
349
        return *this;
97
349
    }
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJlNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRdNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEimEEERS0_RKSt17basic_string_viewIcS6_EDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERiRNS_6StatusEEEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERiEEERS0_RKSt17basic_string_viewIcS5_EDpOT_
_ZN5doris14TaggableLoggerclIJRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERiS8_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Line
Count
Source
90
1
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
1
        } else {
94
1
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
1
        }
96
1
        return *this;
97
1
    }
_ZN5doris14TaggableLoggerclIJRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKS7_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Line
Count
Source
90
2
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
2
        } else {
94
2
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
2
        }
96
2
        return *this;
97
2
    }
_ZN5doris14TaggableLoggerclIJRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Line
Count
Source
90
1
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
1
        } else {
94
1
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
1
        }
96
1
        return *this;
97
1
    }
_ZN5doris14TaggableLoggerclIJRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKS7_lEEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Line
Count
Source
90
11
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
11
        } else {
94
11
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
11
        }
96
11
        return *this;
97
11
    }
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRiEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES9_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
_ZN5doris14TaggableLoggerclIJRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERmS7_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Line
Count
Source
90
1
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
1
        } else {
94
1
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
1
        }
96
1
        return *this;
97
1
    }
_ZN5doris14TaggableLoggerclIJRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERmSA_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Line
Count
Source
90
1
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
1
        } else {
94
1
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
1
        }
96
1
        return *this;
97
1
    }
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJNS_6StatusEEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERmSA_lRKbEEERS0_RKSt17basic_string_viewIcS5_EDpOT_
_ZN5doris14TaggableLoggerclIJRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Line
Count
Source
90
265
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
265
        } else {
94
265
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
265
        }
96
265
        return *this;
97
265
    }
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRKmEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
_ZN5doris14TaggableLoggerclIJRdS2_EEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Line
Count
Source
90
1
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
1
        } else {
94
1
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
1
        }
96
1
        return *this;
97
1
    }
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRlS2_S2_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEERS0_RKSt17basic_string_viewIcS6_EDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRlNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES2_S8_EEERS0_RKSt17basic_string_viewIcS6_EDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRlNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEERS0_RKSt17basic_string_viewIcS6_EDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJlNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES7_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRKlEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRlS2_S2_EEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRSt17basic_string_viewIcSt11char_traitsIcEEmEEERS0_RKS5_DpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRlEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
_ZN5doris14TaggableLoggerclIJlEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Line
Count
Source
90
1.20k
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
1.20k
        } else {
94
1.20k
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
1.20k
        }
96
1.20k
        return *this;
97
1.20k
    }
_ZN5doris14TaggableLoggerclIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERlRS7_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Line
Count
Source
90
354k
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
354k
        } else {
94
354k
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
354k
        }
96
354k
        return *this;
97
354k
    }
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKcEEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKcEEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES7_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
_ZN5doris14TaggableLoggerclIJRmRiEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Line
Count
Source
90
7
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
7
        } else {
94
7
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
7
        }
96
7
        return *this;
97
7
    }
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJPKcEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRlS2_EEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEKS7_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERiS7_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
_ZN5doris14TaggableLoggerclIJmNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERdEEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Line
Count
Source
90
14
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
14
        } else {
94
14
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
14
        }
96
14
        return *this;
97
14
    }
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRKNS_15TObjStorageType4typeENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEERS0_RKSt17basic_string_viewIcS9_EDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJNS_5cloud26ObjectStoreInfoPB_ProviderENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEERS0_RKSt17basic_string_viewIcS7_EDpOT_
unity_2_cxx.cxx:_ZN5doris14TaggableLoggerclIJmRllRPKcN3fmt2v78arg_joinINSt6ranges14transform_viewINS9_8ref_viewISt6vectorISt10shared_ptrINS_6RowsetEESaISF_EEEEZNS_11CloudTablet41replace_rowsets_with_schema_change_outputERKSH_lRSt11unique_lockINS_18BthreadSharedMutexEES4_bE3$_0E9_IteratorILb0EEEST_cEEEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Line
Count
Source
90
14
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
14
        } else {
94
14
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
14
        }
96
14
        return *this;
97
14
    }
_ZN5doris14TaggableLoggerclIJlRlNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_S8_S8_S8_S8_EEERS0_RKSt17basic_string_viewIcS6_EDpOT_
Line
Count
Source
90
5
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
5
        } else {
94
5
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
5
        }
96
5
        return *this;
97
5
    }
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES7_RiEEERS0_RKSt17basic_string_viewIcS5_EDpOT_
unity_2_cxx.cxx:_ZN5doris14TaggableLoggerclIJlRlmN3fmt2v78arg_joinINSt6ranges14transform_viewINS6_8ref_viewISt6vectorISt10shared_ptrINS_6RowsetEESaISC_EEEEZNS_11CloudTablet29apply_visible_pending_rowsetsEvE3$_0E9_IteratorILb0EEESK_cEEEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Line
Count
Source
90
121k
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
121k
        } else {
94
121k
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
121k
        }
96
121k
        return *this;
97
121k
    }
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJmEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERlS7_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERllEEERS0_RKSt17basic_string_viewIcS5_EDpOT_
_ZN5doris14TaggableLoggerclIJlllEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Line
Count
Source
90
15.0k
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
15.0k
        } else {
94
15.0k
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
15.0k
        }
96
15.0k
        return *this;
97
15.0k
    }
_ZN5doris14TaggableLoggerclIJllllEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Line
Count
Source
90
10.2k
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
10.2k
        } else {
94
10.2k
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
10.2k
        }
96
10.2k
        return *this;
97
10.2k
    }
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRlNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_EEERS0_RKSt17basic_string_viewIcS6_EDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERS7_RiEEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJilEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
_ZN5doris14TaggableLoggerclIJmiEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Line
Count
Source
90
300
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
300
        } else {
94
300
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
300
        }
96
300
        return *this;
97
300
    }
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRilEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRilRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEERS0_RKSt17basic_string_viewIcS6_EDpOT_
_ZN5doris14TaggableLoggerclIJlRlEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Line
Count
Source
90
1.20k
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
1.20k
        } else {
94
1.20k
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
1.20k
        }
96
1.20k
        return *this;
97
1.20k
    }
_ZN5doris14TaggableLoggerclIJllEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Line
Count
Source
90
60
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
60
        } else {
94
60
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
60
        }
96
60
        return *this;
97
60
    }
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRlS2_S2_mEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRiRKlS4_EEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Unexecuted instantiation: _ZN5doris14TaggableLoggerclIJRllEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
_ZN5doris14TaggableLoggerclIJRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERiS9_SA_SA_S9_EEERS0_RKSt17basic_string_viewIcS5_EDpOT_
Line
Count
Source
90
133
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
133
        } else {
94
133
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
133
        }
96
133
        return *this;
97
133
    }
_ZN5doris14TaggableLoggerclIJRlRKlEEERS0_RKSt17basic_string_viewIcSt11char_traitsIcEEDpOT_
Line
Count
Source
90
12
    TaggableLogger& operator()(const std::string_view& fmt, Args&&... args) {
91
        if constexpr (sizeof...(args) == 0) {
92
            _msg.stream() << fmt;
93
12
        } else {
94
12
            _msg.stream() << fmt::format(fmt, std::forward<Args&&>(args)...);
95
12
        }
96
12
        return *this;
97
12
    }
98
99
    template <typename V>
100
1.98M
    TaggableLogger& tag(std::string_view key, V&& value) {
101
1.98M
        _msg.stream() << '|' << key << '=';
102
        if constexpr (std::is_same_v<V, TUniqueId> || std::is_same_v<V, PUniqueId>) {
103
            _msg.stream() << print_id(value);
104
1.98M
        } else {
105
1.98M
            _msg.stream() << value;
106
1.98M
        }
107
1.98M
        return *this;
108
1.98M
    }
Unexecuted instantiation: _ZN5doris14TaggableLogger3tagIRKNS_9TTaskType4typeEEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
_ZN5doris14TaggableLogger3tagIRKiEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Line
Count
Source
100
80
    TaggableLogger& tag(std::string_view key, V&& value) {
101
80
        _msg.stream() << '|' << key << '=';
102
        if constexpr (std::is_same_v<V, TUniqueId> || std::is_same_v<V, PUniqueId>) {
103
            _msg.stream() << print_id(value);
104
80
        } else {
105
80
            _msg.stream() << value;
106
80
        }
107
80
        return *this;
108
80
    }
_ZN5doris14TaggableLogger3tagIRKNS_17TAgentTaskRequestEEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Line
Count
Source
100
1
    TaggableLogger& tag(std::string_view key, V&& value) {
101
1
        _msg.stream() << '|' << key << '=';
102
        if constexpr (std::is_same_v<V, TUniqueId> || std::is_same_v<V, PUniqueId>) {
103
            _msg.stream() << print_id(value);
104
1
        } else {
105
1
            _msg.stream() << value;
106
1
        }
107
1
        return *this;
108
1
    }
_ZN5doris14TaggableLogger3tagIRKlEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Line
Count
Source
100
172k
    TaggableLogger& tag(std::string_view key, V&& value) {
101
172k
        _msg.stream() << '|' << key << '=';
102
        if constexpr (std::is_same_v<V, TUniqueId> || std::is_same_v<V, PUniqueId>) {
103
            _msg.stream() << print_id(value);
104
172k
        } else {
105
172k
            _msg.stream() << value;
106
172k
        }
107
172k
        return *this;
108
172k
    }
_ZN5doris14TaggableLogger3tagIRlEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Line
Count
Source
100
418k
    TaggableLogger& tag(std::string_view key, V&& value) {
101
418k
        _msg.stream() << '|' << key << '=';
102
        if constexpr (std::is_same_v<V, TUniqueId> || std::is_same_v<V, PUniqueId>) {
103
            _msg.stream() << print_id(value);
104
418k
        } else {
105
418k
            _msg.stream() << value;
106
418k
        }
107
418k
        return *this;
108
418k
    }
_ZN5doris14TaggableLogger3tagIlEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Line
Count
Source
100
216k
    TaggableLogger& tag(std::string_view key, V&& value) {
101
216k
        _msg.stream() << '|' << key << '=';
102
        if constexpr (std::is_same_v<V, TUniqueId> || std::is_same_v<V, PUniqueId>) {
103
            _msg.stream() << print_id(value);
104
216k
        } else {
105
216k
            _msg.stream() << value;
106
216k
        }
107
216k
        return *this;
108
216k
    }
_ZN5doris14TaggableLogger3tagIRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_St17basic_string_viewIcS5_EOT_
Line
Count
Source
100
51
    TaggableLogger& tag(std::string_view key, V&& value) {
101
51
        _msg.stream() << '|' << key << '=';
102
        if constexpr (std::is_same_v<V, TUniqueId> || std::is_same_v<V, PUniqueId>) {
103
            _msg.stream() << print_id(value);
104
51
        } else {
105
51
            _msg.stream() << value;
106
51
        }
107
51
        return *this;
108
51
    }
_ZN5doris14TaggableLogger3tagIRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_St17basic_string_viewIcS5_EOT_
Line
Count
Source
100
81.8k
    TaggableLogger& tag(std::string_view key, V&& value) {
101
81.8k
        _msg.stream() << '|' << key << '=';
102
        if constexpr (std::is_same_v<V, TUniqueId> || std::is_same_v<V, PUniqueId>) {
103
            _msg.stream() << print_id(value);
104
81.8k
        } else {
105
81.8k
            _msg.stream() << value;
106
81.8k
        }
107
81.8k
        return *this;
108
81.8k
    }
Unexecuted instantiation: _ZN5doris14TaggableLogger3tagIRjEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Unexecuted instantiation: _ZN5doris14TaggableLogger3tagIRKbEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
_ZN5doris14TaggableLogger3tagINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_St17basic_string_viewIcS5_EOT_
Line
Count
Source
100
476k
    TaggableLogger& tag(std::string_view key, V&& value) {
101
476k
        _msg.stream() << '|' << key << '=';
102
        if constexpr (std::is_same_v<V, TUniqueId> || std::is_same_v<V, PUniqueId>) {
103
            _msg.stream() << print_id(value);
104
476k
        } else {
105
476k
            _msg.stream() << value;
106
476k
        }
107
476k
        return *this;
108
476k
    }
_ZN5doris14TaggableLogger3tagIRKNS_9TPushType4typeEEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Line
Count
Source
100
3.19k
    TaggableLogger& tag(std::string_view key, V&& value) {
101
3.19k
        _msg.stream() << '|' << key << '=';
102
        if constexpr (std::is_same_v<V, TUniqueId> || std::is_same_v<V, PUniqueId>) {
103
            _msg.stream() << print_id(value);
104
3.19k
        } else {
105
3.19k
            _msg.stream() << value;
106
3.19k
        }
107
3.19k
        return *this;
108
3.19k
    }
_ZN5doris14TaggableLogger3tagImEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Line
Count
Source
100
171k
    TaggableLogger& tag(std::string_view key, V&& value) {
101
171k
        _msg.stream() << '|' << key << '=';
102
        if constexpr (std::is_same_v<V, TUniqueId> || std::is_same_v<V, PUniqueId>) {
103
            _msg.stream() << print_id(value);
104
171k
        } else {
105
171k
            _msg.stream() << value;
106
171k
        }
107
171k
        return *this;
108
171k
    }
_ZN5doris14TaggableLogger3tagIRiEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Line
Count
Source
100
370k
    TaggableLogger& tag(std::string_view key, V&& value) {
101
370k
        _msg.stream() << '|' << key << '=';
102
        if constexpr (std::is_same_v<V, TUniqueId> || std::is_same_v<V, PUniqueId>) {
103
            _msg.stream() << print_id(value);
104
370k
        } else {
105
370k
            _msg.stream() << value;
106
370k
        }
107
370k
        return *this;
108
370k
    }
_ZN5doris14TaggableLogger3tagIiEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Line
Count
Source
100
13.0k
    TaggableLogger& tag(std::string_view key, V&& value) {
101
13.0k
        _msg.stream() << '|' << key << '=';
102
        if constexpr (std::is_same_v<V, TUniqueId> || std::is_same_v<V, PUniqueId>) {
103
            _msg.stream() << print_id(value);
104
13.0k
        } else {
105
13.0k
            _msg.stream() << value;
106
13.0k
        }
107
13.0k
        return *this;
108
13.0k
    }
Unexecuted instantiation: _ZN5doris14TaggableLogger3tagIRKmEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
_ZN5doris14TaggableLogger3tagIRmEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Line
Count
Source
100
58.9k
    TaggableLogger& tag(std::string_view key, V&& value) {
101
58.9k
        _msg.stream() << '|' << key << '=';
102
        if constexpr (std::is_same_v<V, TUniqueId> || std::is_same_v<V, PUniqueId>) {
103
            _msg.stream() << print_id(value);
104
58.9k
        } else {
105
58.9k
            _msg.stream() << value;
106
58.9k
        }
107
58.9k
        return *this;
108
58.9k
    }
_ZN5doris14TaggableLogger3tagISt17basic_string_viewIcSt11char_traitsIcEEEERS0_S5_OT_
Line
Count
Source
100
4
    TaggableLogger& tag(std::string_view key, V&& value) {
101
4
        _msg.stream() << '|' << key << '=';
102
        if constexpr (std::is_same_v<V, TUniqueId> || std::is_same_v<V, PUniqueId>) {
103
            _msg.stream() << print_id(value);
104
4
        } else {
105
4
            _msg.stream() << value;
106
4
        }
107
4
        return *this;
108
4
    }
_ZN5doris14TaggableLogger3tagIPcEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Line
Count
Source
100
2
    TaggableLogger& tag(std::string_view key, V&& value) {
101
2
        _msg.stream() << '|' << key << '=';
102
        if constexpr (std::is_same_v<V, TUniqueId> || std::is_same_v<V, PUniqueId>) {
103
            _msg.stream() << print_id(value);
104
2
        } else {
105
2
            _msg.stream() << value;
106
2
        }
107
2
        return *this;
108
2
    }
Unexecuted instantiation: _ZN5doris14TaggableLogger3tagIPKcEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Unexecuted instantiation: _ZN5doris14TaggableLogger3tagIRbEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Unexecuted instantiation: _ZN5doris14TaggableLogger3tagIRKSt6vectorINS_7VersionESaIS3_EEEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Unexecuted instantiation: _ZN5doris14TaggableLogger3tagIRNS_6StatusEEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Unexecuted instantiation: _ZN5doris14TaggableLogger3tagIRA8_KcEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Unexecuted instantiation: _ZN5doris14TaggableLogger3tagIRA10_KcEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
Unexecuted instantiation: _ZN5doris14TaggableLogger3tagIRA32_KcEERS0_St17basic_string_viewIcSt11char_traitsIcEEOT_
109
110
    template <typename E>
111
104
    TaggableLogger& error(E&& error) {
112
104
        _msg.stream() << "|error=" << error;
113
104
        return *this;
114
104
    }
Unexecuted instantiation: _ZN5doris14TaggableLogger5errorIRNS_7TStatusEEERS0_OT_
_ZN5doris14TaggableLogger5errorIRNS_6StatusEEERS0_OT_
Line
Count
Source
111
104
    TaggableLogger& error(E&& error) {
112
104
        _msg.stream() << "|error=" << error;
113
104
        return *this;
114
104
    }
115
116
private:
117
    google::LogMessage _msg;
118
};
119
120
// Very very important!!!!
121
// Never define LOG_DEBUG or LOG_TRACE. because the tagged logging method will
122
// always generated string and then check the log level, its performane is bad.
123
// glog's original method will first check log level if it is not satisfied,
124
// the log message is not generated.
125
2.30M
#define LOG_INFO TaggableLogger(__FILE__, __LINE__, google::GLOG_INFO)
126
28.0k
#define LOG_WARNING TaggableLogger(__FILE__, __LINE__, google::GLOG_WARNING)
127
4
#define LOG_ERROR TaggableLogger(__FILE__, __LINE__, google::GLOG_ERROR)
128
0
#define LOG_FATAL TaggableLogger(__FILE__, __LINE__, google::GLOG_FATAL)
129
130
// Avoid the printed log message is truncated by the glog max log size limit
131
#define LOG_LONG_STRING(severity, long_log_str)                                \
132
27
    do {                                                                       \
133
27
        constexpr size_t max_log_size = 30000 - 100;                           \
134
27
        size_t pos = 0;                                                        \
135
27
        size_t total_size = long_log_str.size();                               \
136
27
        size_t tmp_size = std::min(max_log_size, total_size);                  \
137
54
        while (pos < total_size) {                                             \
138
27
            tmp_size = std::min(max_log_size, total_size - pos);               \
139
27
            LOG(severity) << std::string(long_log_str.data() + pos, tmp_size); \
140
27
            pos += tmp_size;                                                   \
141
27
        }                                                                      \
142
27
    } while (0)
143
144
} // namespace doris