@@ -3,7 +3,7 @@ use std::time::Duration;
33use alloy:: providers:: { ProviderBuilder , WsConnect } ;
44use alloy:: { primitives:: Address , transports:: http:: reqwest:: Url } ;
55use clap:: Parser ;
6- use fhevm_engine_common:: { metrics_server, telemetry} ;
6+ use fhevm_engine_common:: { metrics_server, telemetry, utils :: DatabaseURL } ;
77use gw_listener:: aws_s3:: AwsS3Client ;
88use gw_listener:: chain_id_from_env;
99use gw_listener:: gw_listener:: GatewayListener ;
@@ -18,7 +18,7 @@ use tracing::{error, info, Level};
1818#[ command( version, about, long_about = None ) ]
1919struct Conf {
2020 #[ arg( long) ]
21- database_url : Option < String > ,
21+ database_url : Option < DatabaseURL > ,
2222
2323 #[ arg( long, default_value_t = 16 ) ]
2424 database_pool_size : u32 ,
@@ -105,18 +105,14 @@ async fn main() -> anyhow::Result<()> {
105105 . with_max_level ( conf. log_level )
106106 . init ( ) ;
107107
108- info ! ( conf = ?conf, "Starting gw_listener" ) ;
109-
110108 if !conf. service_name . is_empty ( ) {
111109 if let Err ( err) = telemetry:: setup_otlp ( & conf. service_name ) {
112110 error ! ( error = %err, "Failed to setup OTLP" ) ;
113111 }
114112 }
115113
116- let database_url = conf
117- . database_url
118- . clone ( )
119- . unwrap_or_else ( || std:: env:: var ( "DATABASE_URL" ) . expect ( "DATABASE_URL is undefined" ) ) ;
114+ info ! ( gateway_url = %conf. gw_url, max_retries = %conf. provider_max_retries,
115+ retry_interval = ?conf. provider_retry_interval, "Connecting to Gateway" ) ;
120116
121117 let provider = loop {
122118 match ProviderBuilder :: new ( )
@@ -152,7 +148,7 @@ async fn main() -> anyhow::Result<()> {
152148 } ;
153149 let config = ConfigSettings {
154150 host_chain_id,
155- database_url,
151+ database_url : conf . database_url . clone ( ) . unwrap_or_default ( ) ,
156152 database_pool_size : conf. database_pool_size ,
157153 verify_proof_req_db_channel : conf. verify_proof_req_database_channel ,
158154 gw_url : conf. gw_url ,
0 commit comments