aboutsummaryrefslogtreecommitdiff
path: root/src/zen
diff options
context:
space:
mode:
authorStefan Boberg <[email protected]>2025-03-11 09:58:07 +0100
committerGitHub Enterprise <[email protected]>2025-03-11 09:58:07 +0100
commit90db3ced033d4e06da2739e5d97cdeff2b0ba3b9 (patch)
tree8c1375cc1217886ef51f8fd0c3460b274b82527c /src/zen
parentpick up existing cache (#299) (diff)
downloadarchived-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.cpp19
-rw-r--r--src/zen/zen.cpp53
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())