Преглед на файлове

日志方面的东西的优化

skyffire преди 1 година
родител
ревизия
38f3c7a007
променени са 2 файла, в които са добавени 33 реда и са изтрити 61 реда
  1. 30 56
      global/src/log_utils.rs
  2. 3 5
      src/main.rs

+ 30 - 56
global/src/log_utils.rs

@@ -1,11 +1,8 @@
-use std::collections::HashMap;
 use std::fmt::Debug;
 use std::io;
-use tracing::{Event, info, Subscriber, warn};
 use tracing_appender_timezone::non_blocking::WorkerGuard;
-use tracing_subscriber::{fmt, Layer};
-use tracing_subscriber::layer::{Context, SubscriberExt};
-use reqwest::{Client};
+use tracing_subscriber::{fmt};
+use tracing_subscriber::layer::{SubscriberExt};
 use tracing::field::{Field, Visit};
 use tracing_appender_timezone::rolling::{RollingFileAppender, Rotation};
 
@@ -24,63 +21,40 @@ impl Visit for ErrorMessageVisitor {
 
 
 // 错误报告发送到指定服务器
-struct ReportingLayer {
-    account_name: String,
-}
-impl<S> Layer<S> for ReportingLayer
-    where
-        S: Subscriber + for<'a> tracing_subscriber::registry::LookupSpan<'a>,
-{
-    fn on_event(&self, event: &Event<'_>, _ctx: Context<'_, S>) {
-        if event.metadata().level() == &tracing::Level::ERROR {
-            let mut visitor = ErrorMessageVisitor {
-                message: String::new()
-            };
-            event.record(&mut visitor);
-
-            let msg = format!("account={}, type=error, msg={}", self.account_name.clone(), visitor.message);
-            info!(msg)
-            // send_remote_err_log(msg)
-        }
-    }
-}
-
-pub fn send_remote_err_log(msg: String) {
-    tokio::spawn(async move {
-        let encoded_str = base64::encode(msg.clone());
-        let mut request_json_data = HashMap::new();
-        request_json_data.insert("serverName", "As");
-        request_json_data.insert("data", encoded_str.as_str());
-
-        let res = Client::new().post("https://hhh.liangjiang.cc/api/log/addError?key=d64a8sc874sa8c4as5")
-            .json(&request_json_data)
-            .send()
-            .await;
-
-        match res {
-            Ok(_resp) => {
-                // let body = _resp.text().await.unwrap();
-            }
-            Err(err) => {
-                warn!("log的error监听器发送远端报错失败:{:?}", err);
-            }
-        }
-    });
-}
+// struct ReportingLayer {
+//     account_name: String,
+// }
+// impl<S> Layer<S> for ReportingLayer
+//     where
+//         S: Subscriber + for<'a> tracing_subscriber::registry::LookupSpan<'a>,
+// {
+//     fn on_event(&self, event: &Event<'_>, _ctx: Context<'_, S>) {
+//         if event.metadata().level() == &tracing::Level::ERROR {
+//             let mut visitor = ErrorMessageVisitor {
+//                 message: String::new()
+//             };
+//             event.record(&mut visitor);
+//
+//             // let msg = format!("account={}, type=error, msg={}", self.account_name.clone(), visitor.message);
+//             // info!(msg)
+//             // send_remote_err_log(msg)
+//         }
+//     }
+// }
 
 pub fn init_log_with_debug() {
-    let _ = final_init(tracing::Level::DEBUG.as_str(), 0, "test".to_string());
+    let _ = final_init(tracing::Level::DEBUG.as_str(), 0);
 }
 
 pub fn init_log_with_trace() {
-    let _ = final_init(tracing::Level::TRACE.as_str(), 0, "test".to_string());
+    let _ = final_init(tracing::Level::TRACE.as_str(), 0);
 }
 
 pub fn init_log_with_info() {
-    let _ = final_init(tracing::Level::INFO.as_str(), 0, "test".to_string());
+    let _ = final_init(tracing::Level::INFO.as_str(), 0);
 }
 
-pub fn final_init(level: &str, port: u32, account_name: String) -> WorkerGuard {
+pub fn final_init(level: &str, port: u32) -> WorkerGuard {
     let mut path = String::new();
     path.push_str("./logs");
     path.push_str(port.to_string().as_str());
@@ -116,14 +90,14 @@ pub fn final_init(level: &str, port: u32, account_name: String) -> WorkerGuard {
         .with_writer(non_blocking.clone())
         .with_span_events(fmt::format::FmtSpan::FULL);
 
-    let reporting_layer = ReportingLayer {
-        account_name
-    };
+    // let reporting_layer = ReportingLayer {
+    //     account_name
+    // };
 
     let layer = tracing_subscriber::Registry::default()
         .with(fmt_layer)
         .with(file_layer)
-        .with(reporting_layer)
+        // .with(reporting_layer)
         .with(tracing_subscriber::EnvFilter::new(level));
 
     tracing::subscriber::set_global_default(layer).unwrap();

+ 3 - 5
src/main.rs

@@ -11,12 +11,11 @@ use tokio::sync::Mutex;
 use tracing::{error, info, warn};
 use tracing_appender_timezone::non_blocking::WorkerGuard;
 use global::cci::CentralControlInfo;
-use global::log_utils::{send_remote_err_log};
 use global::params::Params;
 
 // 日志级别配置
-fn log_level_init(log_str: String, port: u32, account_name: String) -> WorkerGuard {
-    let log = global::log_utils::final_init(log_str.as_str(), port, account_name);
+fn log_level_init(log_str: String, port: u32) -> WorkerGuard {
+    let log = global::log_utils::final_init(log_str.as_str(), port);
     info!("日志级别读取成功:{}。", log_str);
     return log;
 }
@@ -126,7 +125,7 @@ async fn main() {
     if params.run_mode == 1 {
         _guard = clear_log_level_init(params.log_level.clone(), params.port.clone(), params.account_name.clone());
     } else {
-        _guard = log_level_init(params.log_level.clone(), params.port.clone(), params.account_name.clone());
+        _guard = log_level_init(params.log_level.clone(), params.port.clone());
     }
 
     info!("--------------------------------程序开始执行-----------------------------");
@@ -141,7 +140,6 @@ async fn main() {
         let msg = format!("account={}, type=panic, msg={:?}, location={:?}",
                           account_name_clone, panic_info.to_string(), panic_info.location());
         warn!("{}", msg);
-        send_remote_err_log(msg);
         panic_running.store(false, Ordering::Relaxed);
     }));