@@ -1324,43 +1324,55 @@ class LightningManager {
13241324 amountSats,
13251325 timeout = 20000 ,
13261326 } : TPaymentReq ) : Promise < Result < TChannelManagerPaymentSent > > => {
1327+ // Enable trace logging
1328+ await ldk . setLogLevel ( ELdkLogLevels . trace , true ) ;
1329+ await ldk . writeToLogFile ( 'debug' , `Trace logging enabled` ) ;
1330+
13271331 return new Promise ( async ( resolve ) => {
1328- await ldk . writeToLogFile (
1329- 'debug' ,
1330- `ldk.pay() called with hard timeout of ${ timeout } ms` ,
1331- ) ;
1332+ try {
1333+ await ldk . writeToLogFile (
1334+ 'debug' ,
1335+ `ldk.pay() called with hard timeout of ${ timeout } ms` ,
1336+ ) ;
13321337
1333- if ( timeout < 1000 ) {
1334- return resolve ( err ( 'Timeout must be at least 1000ms.' ) ) ;
1335- }
1338+ if ( timeout < 1000 ) {
1339+ return resolve ( err ( 'Timeout must be at least 1000ms.' ) ) ;
1340+ }
13361341
1337- this . subscribeToPaymentResponses ( resolve ) ;
1342+ this . subscribeToPaymentResponses ( resolve ) ;
13381343
1339- let payResponse : Result < string > | undefined = await ldk . pay ( {
1340- paymentRequest,
1341- amountSats,
1342- timeout,
1343- } ) ;
1344+ let payResponse : Result < string > | undefined = await ldk . pay ( {
1345+ paymentRequest,
1346+ amountSats,
1347+ timeout,
1348+ } ) ;
13441349
1345- await ldk . writeToLogFile (
1346- 'debug' ,
1347- payResponse . isOk ( )
1348- ? `ldk.pay() success (pending callbacks) Payment ID: ${ payResponse . value } `
1349- : `ldk.pay() error ${ payResponse . error . message } .` ,
1350- ) ;
1350+ await ldk . writeToLogFile (
1351+ 'debug' ,
1352+ payResponse . isOk ( )
1353+ ? `ldk.pay() success (pending callbacks) Payment ID: ${ payResponse . value } `
1354+ : `ldk.pay() error ${ payResponse . error . message } .` ,
1355+ ) ;
13511356
1352- if ( ! payResponse ) {
1353- this . unsubscribeFromPaymentSubscriptions ( ) ;
1354- return resolve ( err ( 'Unable to pay the provided lightning invoice.' ) ) ;
1355- }
1357+ if ( ! payResponse ) {
1358+ this . unsubscribeFromPaymentSubscriptions ( ) ;
1359+ return resolve ( err ( 'Unable to pay the provided lightning invoice.' ) ) ;
1360+ }
13561361
1357- if ( payResponse . isErr ( ) ) {
1358- this . unsubscribeFromPaymentSubscriptions ( ) ;
1359- return resolve ( err ( payResponse . error . message ) ) ;
1360- }
1362+ if ( payResponse . isErr ( ) ) {
1363+ this . unsubscribeFromPaymentSubscriptions ( ) ;
1364+ return resolve ( err ( payResponse . error . message ) ) ;
1365+ }
13611366
1362- //Save payment ids to file on payResponse success.
1363- await this . appendLdkPaymentId ( payResponse . value ) ;
1367+ //Save payment ids to file on payResponse success.
1368+ await this . appendLdkPaymentId ( payResponse . value ) ;
1369+ } finally {
1370+ // Disable trace logging after 10 seconds
1371+ setTimeout ( async ( ) => {
1372+ await ldk . setLogLevel ( ELdkLogLevels . trace , false ) ;
1373+ await ldk . writeToLogFile ( 'debug' , `Trace logging disabled` ) ;
1374+ } , 10000 ) ;
1375+ }
13641376 } ) ;
13651377 } ;
13661378
0 commit comments