diff options
| author | Stefan Boberg <[email protected]> | 2025-03-11 09:58:07 +0100 |
|---|---|---|
| committer | GitHub Enterprise <[email protected]> | 2025-03-11 09:58:07 +0100 |
| commit | 90db3ced033d4e06da2739e5d97cdeff2b0ba3b9 (patch) | |
| tree | 8c1375cc1217886ef51f8fd0c3460b274b82527c /src/zen | |
| parent | pick up existing cache (#299) (diff) | |
| download | archived-zen-90db3ced033d4e06da2739e5d97cdeff2b0ba3b9.tar.xz archived-zen-90db3ced033d4e06da2739e5d97cdeff2b0ba3b9.zip | |
Build command tweaks (#301)
- Improvement: Don't chunk up .mp4 files as they generally won't benefit from deduplication or partial in-place-updates
- Improvement: Emit build name to console output when downloading a build
- Improvement: Added some debug logging
- Bugfix: Logging setup would previously not function correctly when not logging to file
Diffstat (limited to 'src/zen')
| -rw-r--r-- | src/zen/cmds/builds_cmd.cpp | 19 | ||||
| -rw-r--r-- | src/zen/zen.cpp | 53 |
2 files changed, 33 insertions, 39 deletions
diff --git a/src/zen/cmds/builds_cmd.cpp b/src/zen/cmds/builds_cmd.cpp index 2c7a73fb3..56c3c3c4f 100644 --- a/src/zen/cmds/builds_cmd.cpp +++ b/src/zen/cmds/builds_cmd.cpp @@ -5,6 +5,7 @@ #include <zencore/basicfile.h> #include <zencore/compactbinarybuilder.h> #include <zencore/compactbinaryfile.h> +#include <zencore/compactbinaryfmt.h> #include <zencore/compress.h> #include <zencore/except.h> #include <zencore/filesystem.h> @@ -5699,10 +5700,14 @@ namespace { std::vector<std::pair<Oid, std::string>> AvailableParts; CbObject BuildObject = Storage.GetBuild(BuildId); - ZEN_CONSOLE("GetBuild took {}. Payload size: {}", + + ZEN_CONSOLE("GetBuild took {}. Name: '{}', Payload size: {}", NiceTimeSpanMs(GetBuildTimer.GetElapsedTimeMs()), + BuildObject["BuildName"sv].AsString(), NiceBytes(BuildObject.GetSize())); + ZEN_DEBUG("Build object: {}", BuildObject); + CbObjectView PartsObject = BuildObject["parts"sv].AsObjectView(); if (!PartsObject) { @@ -5782,11 +5787,13 @@ namespace { { ZEN_TRACE_CPU("GetRemoteContent"); - Stopwatch GetBuildPartTimer; - CbObject BuildPartManifest = Storage.GetBuildPart(BuildId, BuildParts[0].first); + Stopwatch GetBuildPartTimer; + const Oid BuildPartId = BuildParts[0].first; + const std::string_view BuildPartName = BuildParts[0].second; + CbObject BuildPartManifest = Storage.GetBuildPart(BuildId, BuildPartId); ZEN_CONSOLE("GetBuildPart {} ('{}') took {}. Payload size: {}", - BuildParts[0].first, - BuildParts[0].second, + BuildPartId, + BuildPartName, NiceTimeSpanMs(GetBuildPartTimer.GetElapsedTimeMs()), NiceBytes(BuildPartManifest.GetSize())); @@ -5915,7 +5922,7 @@ namespace { OutPartContents.resize(1); ParseBuildPartManifest(Storage, BuildId, - BuildParts[0].first, + BuildPartId, BuildPartManifest, OutPartContents[0], OutBlockDescriptions, diff --git a/src/zen/zen.cpp b/src/zen/zen.cpp index 713a0d66d..4e6161e86 100644 --- a/src/zen/zen.cpp +++ b/src/zen/zen.cpp @@ -33,6 +33,7 @@ #include <zencore/string.h> #include <zencore/trace.h> #include <zenhttp/httpcommon.h> +#include <zenutil/logging.h> #include <zenutil/zenserverprocess.h> #include <zencore/memory/fmalloc.h> @@ -377,31 +378,6 @@ main(int argc, char** argv) using namespace zen; using namespace std::literals; - zen::logging::InitializeLogging(); - - // Set output mode to handle virtual terminal sequences - zen::logging::EnableVTMode(); - std::set_terminate([]() { - void* Frames[8]; - uint32_t FrameCount = GetCallstack(2, 8, Frames); - CallstackFrames* Callstack = CreateCallstack(FrameCount, Frames); - ZEN_CRITICAL("Program exited abnormally via std::terminate()\n{}", CallstackToString(Callstack, " ")); - FreeCallstack(Callstack); - }); - - LoggerRef DefaultLogger = zen::logging::Default(); - auto& Sinks = DefaultLogger.SpdLogger->sinks(); - - Sinks.clear(); - auto ConsoleSink = std::make_shared<spdlog::sinks::ansicolor_stdout_sink_mt>(); - Sinks.push_back(ConsoleSink); - - zen::MaximizeOpenFileCount(); - - ////////////////////////////////////////////////////////////////////////// - - auto _ = zen::MakeGuard([] { spdlog::shutdown(); }); - AttachCommand AttachCmd; BenchCommand BenchCmd; BuildsCommand BuildsCmd; @@ -674,14 +650,25 @@ main(int argc, char** argv) exit(0); } - if (GlobalOptions.IsDebug) - { - logging::SetLogLevel(logging::level::Debug); - } - if (GlobalOptions.IsVerbose) - { - logging::SetLogLevel(logging::level::Trace); - } + zen::LoggingOptions LogOptions; + LogOptions.IsDebug = GlobalOptions.IsDebug; + LogOptions.IsVerbose = GlobalOptions.IsVerbose; + LogOptions.AllowAsync = false; + zen::InitializeLogging(LogOptions); + + std::set_terminate([]() { + void* Frames[8]; + uint32_t FrameCount = GetCallstack(2, 8, Frames); + CallstackFrames* Callstack = CreateCallstack(FrameCount, Frames); + ZEN_CRITICAL("Program exited abnormally via std::terminate()\n{}", CallstackToString(Callstack, " ")); + FreeCallstack(Callstack); + }); + + zen::MaximizeOpenFileCount(); + + ////////////////////////////////////////////////////////////////////////// + + auto _ = zen::MakeGuard([] { zen::ShutdownLogging(); }); #if ZEN_WITH_TRACE if (TraceHost.size()) |