File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -2366,6 +2366,38 @@ class EdenConfig : private ConfigSettingManager {
23662366 RelativePath{" .edenfs-notifications-state" },
23672367 this };
23682368
2369+ // [xplat-logger]
2370+
2371+ ConfigSetting<size_t > xplatLoggerQueueLimitBytes{
2372+ " xplat-logger:queue-limit-bytes" ,
2373+ 128 * 1024 ,
2374+ this };
2375+
2376+ ConfigSetting<size_t > xplatLoggerMaxBatchSize{
2377+ " xplat-logger:max-batch-size" ,
2378+ 100 ,
2379+ this };
2380+
2381+ ConfigSetting<size_t > xplatLoggerMaxConsecutiveFailures{
2382+ " xplat-logger:max-consecutive-failures" ,
2383+ 3 ,
2384+ this };
2385+
2386+ ConfigSetting<std::chrono::nanoseconds> xplatLoggerFlushTimeout{
2387+ " xplat-logger:flush-timeout" ,
2388+ std::chrono::seconds (1 ),
2389+ this };
2390+
2391+ ConfigSetting<std::chrono::nanoseconds> xplatLoggerConnectTimeout{
2392+ " xplat-logger:connect-timeout" ,
2393+ std::chrono::seconds (1 ),
2394+ this };
2395+
2396+ ConfigSetting<std::chrono::nanoseconds> xplatLoggerRpcTimeout{
2397+ " xplat-logger:rpc-timeout" ,
2398+ std::chrono::seconds (1 ),
2399+ this };
2400+
23692401// [facebook]
23702402// Facebook internal
23712403
Original file line number Diff line number Diff line change @@ -40,12 +40,17 @@ class SpyStructuredLogger : public StructuredLogger {
4040 }
4141};
4242
43+ std::shared_ptr<ReloadableConfig> makeTestReloadableConfig () {
44+ return std::make_shared<ReloadableConfig>(EdenConfig::createTestEdenConfig ());
45+ }
46+
4347class SpyXplatLogger : public XplatLogger {
4448 public:
4549 SpyXplatLogger ()
4650 : XplatLogger(
4751 EdenTelemetryIdentity{},
48- makeRefPtr<EdenStats>()) {}
52+ makeRefPtr<EdenStats>(),
53+ makeTestReloadableConfig ()) {}
4954
5055 std::atomic<int > callCount{0 };
5156 folly::SaturatingSemaphore<> eventLogged;
Original file line number Diff line number Diff line change @@ -568,7 +568,8 @@ EdenServer::EdenServer(
568568#ifdef EDEN_HAVE_LOGGER
569569 xplatLogger_{std::make_unique<XplatLogger>(
570570 EdenTelemetryIdentity::fromSessionInfo (sessionInfo),
571- edenStats.copy ())},
571+ edenStats.copy (),
572+ config_)},
572573#endif
573574 serverState_{make_shared<ServerState>(
574575 std::move (userInfo),
Original file line number Diff line number Diff line change @@ -56,10 +56,17 @@ cpp_benchmark(
5656 ),
5757 deps = [
5858 "fbsource//third-party/benchmark:benchmark" ,
59- "//eden/common/telemetry:telemetry" ,
60- "//eden/common/utils/benchharness:benchharness" ,
59+ "//eden/common/telemetry:log_info" ,
60+ "//eden/common/telemetry:scribe_logger" ,
61+ "//eden/common/utils:ref_ptr" ,
62+ "//eden/fs/telemetry:stats" ,
63+ "//eden/fs/telemetry:xplat_keys" ,
64+ "//eden/fs/telemetry/facebook:XplatTransforms" ,
65+ "//eden/fs/telemetry/facebook:eden_telemetry_identity" ,
66+ "//eden/fs/telemetry/facebook:xplat_logger" ,
6167 "//folly/init:init" ,
62- "//folly/synchronization/test:barrier" ,
68+ "//folly/json:dynamic" ,
69+ "//scribe/api/producer/structured:compact_message" ,
6370 ],
6471)
6572
Original file line number Diff line number Diff line change @@ -192,8 +192,8 @@ static void BM_XplatLogger_Enqueue(benchmark::State& state) {
192192
193193 if (state.thread_index () == 0 ) {
194194 teardownCount.store (0 , std::memory_order_relaxed);
195- ownedLogger =
196- std::make_unique<XplatLogger>( makeIdentity (), makeRefPtr<EdenStats>());
195+ ownedLogger = std::make_unique<XplatLogger>(
196+ makeIdentity (), makeRefPtr<EdenStats>(), nullptr );
197197 ownedLogger->registerTransform (
198198 " perfpipe_edenfs_file_accesses" ,
199199 " GeneratedEdenfsFileAccessesLoggerConfig" ,
@@ -250,8 +250,8 @@ BENCHMARK(BM_ScribeCat_Throughput)->Arg(100)->Arg(1000)->Arg(10000);
250250
251251static void BM_XplatLogger_Throughput (benchmark::State& state) {
252252 const auto burstSize = state.range (0 );
253- auto logger =
254- std::make_unique<XplatLogger>( makeIdentity (), makeRefPtr<EdenStats>());
253+ auto logger = std::make_unique<XplatLogger>(
254+ makeIdentity (), makeRefPtr<EdenStats>(), nullptr );
255255 logger->registerTransform (
256256 " perfpipe_edenfs_file_accesses" ,
257257 " GeneratedEdenfsFileAccessesLoggerConfig" ,
You can’t perform that action at this time.
0 commit comments