11use fastly:: http:: { header, Method , StatusCode } ;
22use fastly:: { Error , Request , Response } ;
3- use log :: LevelFilter :: Info ;
3+ use log_fastly :: Logger ;
44
55mod error;
66use crate :: error:: to_error_response;
@@ -20,7 +20,7 @@ use trusted_server_common::why::handle_why_trusted_server;
2020
2121#[ fastly:: main]
2222fn main ( req : Request ) -> Result < Response , Error > {
23- log_fastly :: init_simple ( "mylogs" , Info ) ;
23+ init_logger ( ) ;
2424
2525 let settings = match Settings :: new ( ) {
2626 Ok ( s) => s,
@@ -83,3 +83,25 @@ fn not_found_response() -> Response {
8383 . with_header ( header:: CONTENT_TYPE , "text/plain" )
8484 . with_header ( HEADER_X_COMPRESS_HINT , "on" )
8585}
86+
87+ fn init_logger ( ) {
88+ let logger = Logger :: builder ( )
89+ . default_endpoint ( "tslog" )
90+ . echo_stdout ( true )
91+ . max_level ( log:: LevelFilter :: Debug )
92+ . build ( )
93+ . expect ( "Failed to build Logger" ) ;
94+
95+ fern:: Dispatch :: new ( )
96+ . format ( |out, message, record| {
97+ out. finish ( format_args ! (
98+ "{} {} {}" ,
99+ chrono:: Local :: now( ) . to_rfc3339_opts( chrono:: SecondsFormat :: Millis , true ) ,
100+ record. level( ) ,
101+ message
102+ ) )
103+ } )
104+ . chain ( Box :: new ( logger) as Box < dyn log:: Log > )
105+ . apply ( )
106+ . expect ( "Failed to initialize logger" ) ;
107+ }
0 commit comments