frame_omni_bencher/main.rs
1// This file is part of Substrate.
2
3// Copyright (C) Parity Technologies (UK) Ltd.
4// SPDX-License-Identifier: Apache-2.0
5
6// Licensed under the Apache License, Version 2.0 (the "License");
7// you may not use this file except in compliance with the License.
8// You may obtain a copy of the License at
9//
10// http://www.apache.org/licenses/LICENSE-2.0
11//
12// Unless required by applicable law or agreed to in writing, software
13// distributed under the License is distributed on an "AS IS" BASIS,
14// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15// See the License for the specific language governing permissions and
16// limitations under the License.
17
18mod command;
19
20use clap::Parser;
21use sc_cli::Result;
22use tracing_subscriber::EnvFilter;
23
24fn main() -> Result<()> {
25 setup_logger();
26
27 command::Command::parse().run()
28}
29
30/// Setup logging with `info` as default level. Can be set via `RUST_LOG` env.
31fn setup_logger() {
32 // Disable these log targets because they are spammy.
33 let unwanted_targets =
34 &["cranelift_codegen", "wasm_cranelift", "wasmtime_jit", "wasmtime_cranelift", "wasm_jit"];
35
36 let mut env_filter =
37 EnvFilter::try_from_default_env().unwrap_or_else(|_| EnvFilter::new("info"));
38
39 for target in unwanted_targets {
40 env_filter = env_filter.add_directive(format!("{}=off", target).parse().unwrap());
41 }
42
43 tracing_subscriber::fmt()
44 .with_env_filter(env_filter)
45 .with_writer(std::io::stderr)
46 .init();
47}