@@ -214,12 +214,14 @@ def user_agent_info(self):
214214
215215 def validate_auth (self ):
216216 """Validate that client has valid auth token or can be logged in."""
217-
218217 if self ._auth_session :
219218 # Refresh auth token if it expired or will expire very soon
220- delta = self ._auth_session ["expire" ] - datetime .now (timezone .utc )
221- if delta .total_seconds () < 5 :
222- self .log .info ("Token has expired - refreshing..." )
219+ expire = self ._auth_session .get ("expire" )
220+ now = datetime .now (timezone .utc )
221+ delta = expire - now
222+ delta_seconds = delta .total_seconds ()
223+ if delta_seconds < 5 :
224+ self .log .debug (f"Token has expired: expire={ expire } now={ now } delta={ delta_seconds :.1f} s" )
223225 if self ._auth_params .get ("login" , None ) and self ._auth_params .get ("password" , None ):
224226 self .log .info ("Token has expired - refreshing..." )
225227 self .login (self ._auth_params ["login" ], self ._auth_params ["password" ])
@@ -318,7 +320,6 @@ def login(self, login, password):
318320 :type password: String
319321 """
320322 params = {"login" : login , "password" : password }
321- self ._auth_session = None
322323 self .log .info (f"Going to log in user { login } " )
323324 try :
324325 resp = self .post (
@@ -329,12 +330,14 @@ def login(self, login, password):
329330 except ClientError as e :
330331 self .log .info (f"Login problem: { e .detail } " )
331332 raise LoginError (e .detail )
333+ expires = dateutil .parser .parse (session ["expire" ])
332334 self ._auth_session = {
333335 "token" : f"Bearer { session ['token' ]} " ,
334- "expire" : dateutil . parser . parse ( session [ "expire" ]) ,
336+ "expire" : expires ,
335337 }
336338 self ._user_info = {"username" : data ["username" ]}
337339 self .log .info (f"User { data ['username' ]} successfully logged in." )
340+ self .log .debug (f"The auth token expires at { expires } " )
338341 return session
339342
340343 def username (self ):
0 commit comments