23
23
#include < protocols/bdx/BdxTransferServerDelegate.h>
24
24
#include < protocols/bdx/DiagnosticLogs.h>
25
25
26
+ #import " MTRDeviceControllerFactory_Internal.h"
26
27
#import " MTRDeviceController_Internal.h"
27
28
#import " MTRError_Internal.h"
28
29
#import " MTRLogging_Internal.h"
@@ -260,6 +261,7 @@ - (BOOL)matches:(NSString *)fileDesignator
260
261
261
262
- (void )failure : (NSError * _Nullable)error
262
263
{
264
+ MTR_LOG (" %@ Diagnostic log transfer failure: %@" , self, error);
263
265
_finalize (error);
264
266
}
265
267
@@ -461,6 +463,9 @@ - (void)downloadLogFromNodeWithID:(NSNumber *)nodeID
461
463
auto err = _bridge->StartBDXTransferTimeout (download, timeoutInSeconds);
462
464
VerifyOrReturn (CHIP_NO_ERROR == err, [download failure: [MTRError errorForCHIPErrorCode: err]]);
463
465
}
466
+
467
+ MTR_LOG (" %@ Started log download attempt for node %016llX-%016llX (%llu)" , download,
468
+ controller.compressedFabricID .unsignedLongLongValue , nodeID.unsignedLongLongValue , nodeID.unsignedLongLongValue );
464
469
}
465
470
466
471
- (void )abortDownloadsForController : (MTRDeviceController_Concrete *)controller ;
@@ -477,9 +482,15 @@ - (void)handleBDXTransferSessionBeginForFileDesignator:(NSString *)fileDesignato
477
482
abortHandler : (AbortHandler)abortHandler ;
478
483
{
479
484
assertChipStackLockedByCurrentThread ();
480
- MTR_LOG (" BDX Transfer Session Begin for log download: %@" , fileDesignator);
481
485
482
486
auto * download = [_downloads get: fileDesignator fabricIndex: fabricIndex nodeID: nodeID];
487
+
488
+ auto * controller = [[MTRDeviceControllerFactory sharedInstance ] runningControllerForFabricIndex: fabricIndex.unsignedCharValue];
489
+
490
+ MTR_LOG (" %@ BDX Transfer Session Begin for log download: %016llX-%016llX (%llu), %@" , download,
491
+ controller.compressedFabricID .unsignedLongLongValue , nodeID.unsignedLongLongValue , nodeID.unsignedLongLongValue ,
492
+ fileDesignator);
493
+
483
494
VerifyOrReturn (nil != download, completion ([MTRError errorForCHIPErrorCode: CHIP_ERROR_NOT_FOUND]));
484
495
485
496
download.abortHandler = abortHandler;
@@ -493,9 +504,15 @@ - (void)handleBDXTransferSessionDataForFileDesignator:(NSString *)fileDesignator
493
504
completion : (MTRStatusCompletion)completion
494
505
{
495
506
assertChipStackLockedByCurrentThread ();
496
- MTR_LOG (" BDX Transfer Session Data for log download: %@: %@" , fileDesignator, data);
497
507
498
508
auto * download = [_downloads get: fileDesignator fabricIndex: fabricIndex nodeID: nodeID];
509
+
510
+ auto * controller = [[MTRDeviceControllerFactory sharedInstance ] runningControllerForFabricIndex: fabricIndex.unsignedCharValue];
511
+
512
+ MTR_LOG (" %@ BDX Transfer Session Data for log download: %016llX-%016llX (%llu), %@: %@" , download,
513
+ controller.compressedFabricID .unsignedLongLongValue , nodeID.unsignedLongLongValue , nodeID.unsignedLongLongValue ,
514
+ fileDesignator, data);
515
+
499
516
VerifyOrReturn (nil != download, completion ([MTRError errorForCHIPErrorCode: CHIP_ERROR_NOT_FOUND]));
500
517
501
518
NSError * error = nil ;
@@ -511,9 +528,15 @@ - (void)handleBDXTransferSessionEndForFileDesignator:(NSString *)fileDesignator
511
528
error : (NSError * _Nullable)error
512
529
{
513
530
assertChipStackLockedByCurrentThread ();
514
- MTR_LOG (" BDX Transfer Session End for log download: %@: %@" , fileDesignator, error);
515
531
516
532
auto * download = [_downloads get: fileDesignator fabricIndex: fabricIndex nodeID: nodeID];
533
+
534
+ auto * controller = [[MTRDeviceControllerFactory sharedInstance ] runningControllerForFabricIndex: fabricIndex.unsignedCharValue];
535
+
536
+ MTR_LOG (" %@ BDX Transfer Session End for log download: %016llX-%016llX (%llu), %@: %@" , download,
537
+ controller.compressedFabricID .unsignedLongLongValue , nodeID.unsignedLongLongValue , nodeID.unsignedLongLongValue ,
538
+ fileDesignator, error);
539
+
517
540
VerifyOrReturn (nil != download);
518
541
519
542
VerifyOrReturn (nil == error, [download failure: error]);
@@ -641,6 +664,12 @@ - (void)handleBDXTransferSessionEndForFileDesignator:(NSString *)fileDesignator
641
664
auto * download = (__bridge MTRDownload *) context;
642
665
VerifyOrReturn (nil != download);
643
666
667
+ auto * controller = [[MTRDeviceControllerFactory sharedInstance ] runningControllerForFabricIndex: download.fabricIndex.unsignedCharValue];
668
+
669
+ MTR_LOG (" %@ Diagnostic log transfer timed out for %016llX-%016llX (%llu), abortHandler: %@" , download,
670
+ controller.compressedFabricID .unsignedLongLongValue , download.nodeID .unsignedLongLongValue ,
671
+ download.nodeID .unsignedLongLongValue , download.abortHandler );
672
+
644
673
// If there is no abortHandler, it means that the BDX transfer has not started.
645
674
// When a BDX transfer has started we need to abort the transfer and we would error out
646
675
// at next poll. We would end up calling OnTransferEnd and eventually [download failure:error].
0 commit comments