MCPcopy Create free account
hub / github.com/CodSpeedHQ/codspeed / new

Method new

src/cli/run/logger.rs:15–34  ·  view source on GitHub ↗
(provider: &dyn RunEnvironmentProvider)

Source from the content-addressed store, hash-verified

13
14impl Logger {
15 pub fn new(provider: &dyn RunEnvironmentProvider) -> Result<Self> {
16 let provider_logger = provider.get_logger();
17 let log_file = NamedTempFile::new().context("Failed to create log file")?;
18 let log_file_path = log_file.path().to_path_buf();
19
20 let file_logger_config = simplelog::ConfigBuilder::new()
21 // Groups are not logged to the file
22 .add_filter_ignore_str(GROUP_TARGET)
23 .add_filter_ignore_str(OPENED_GROUP_TARGET)
24 .build();
25 let file_logger = WriteLogger::new(LevelFilter::Trace, file_logger_config, log_file);
26
27 if let Err(_e) = CombinedLogger::init(vec![provider_logger, file_logger]) {
28 // In tests, test_log already initializes a logger, so we ignore the error
29 #[cfg(not(test))]
30 return Err(anyhow::Error::from(_e).context("Failed to init logger"));
31 }
32
33 Ok(Self { log_file_path })
34 }
35
36 pub fn persist_log_to_profile_folder(&self, profile_folder: &Path) -> Result<()> {
37 let dest_log_file_path = profile_folder.join("runner.log");

Callers

nothing calls this directly

Calls 3

pathMethod · 0.80
buildMethod · 0.80
get_loggerMethod · 0.45

Tested by

no test coverage detected