/
githubmirror
/
node
Обзор
Документация
Войти
/
githubmirror
/
node
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/tracing/trace_event_helper.cc
51 строка
1 KB
Chengzhong Wu
src: fix perfetto build on GetTraceFilePath
02 авг 2026, 17:30
02 авг 2026, 17:30
19cf50c
Код
Авторство
О чём код?
#include "tracing/trace_event_helper.h" #include "node.h" #include "uv.h" #include <string> #include <string_view> namespace node { namespace tracing { v8::TracingController* g_controller = nullptr; v8::TracingController* TraceEventHelper::GetTracingController() { return g_controller; } void TraceEventHelper::SetTracingController(v8::TracingController* controller) { g_controller = controller; } namespace { void replace_substring(std::string* target, std::string_view search, std::string_view insert) { size_t pos = target->find(search); for (; pos != std::string::npos; pos = target->find(search, pos)) { target->replace(pos, search.size(), insert); pos += insert.size(); } } } // namespace std::string GetTraceFilePath(std::string_view log_file_pattern, int file_num) { // Evaluate a JS-style template string that accepts ${pid} and ${rotation}. std::string filepath(log_file_pattern); replace_substring(&filepath, "${pid}", std::to_string(uv_os_getpid())); replace_substring(&filepath, "${rotation}", std::to_string(file_num)); return filepath; } } // namespace tracing v8::TracingController* GetTracingController() { return tracing::TraceEventHelper::GetTracingController(); } void SetTracingController(v8::TracingController* controller) { tracing::TraceEventHelper::SetTracingController(controller); } } // namespace node