@@ -348,21 +348,45 @@ function ($query, $bindings = null, $time = null, $connectionName = null) use ($
348
348
\Illuminate \Database \Events \TransactionBeginning::class,
349
349
'connection.*.beganTransaction ' ,
350
350
], function ($ transaction ) use ($ queryCollector ) {
351
- $ queryCollector ->collectTransactionEvent ('Begin Transaction ' , $ transaction ->connection );
351
+
352
+ // Laravel 5.2 changed the way some core events worked. We must account for
353
+ // the first argument being an "event object", where arguments are passed
354
+ // via object properties, instead of individual arguments.
355
+ if ($ transaction instanceof \Illuminate \Database \Events \TransactionBeginning) {
356
+ $ connection = $ transaction ->connection ;
357
+ } else {
358
+ $ connection = $ transaction ;
359
+ }
360
+
361
+ $ queryCollector ->collectTransactionEvent ('Begin Transaction ' , $ connection );
352
362
});
353
363
354
364
$ db ->getEventDispatcher ()->listen ([
355
365
\Illuminate \Database \Events \TransactionCommitted::class,
356
366
'connection.*.committed ' ,
357
367
], function ($ transaction ) use ($ queryCollector ) {
358
- $ queryCollector ->collectTransactionEvent ('Commit Transaction ' , $ transaction ->connection );
368
+
369
+ if ($ transaction instanceof \Illuminate \Database \Events \TransactionCommitted) {
370
+ $ connection = $ transaction ->connection ;
371
+ } else {
372
+ $ connection = $ transaction ;
373
+ }
374
+
375
+ $ queryCollector ->collectTransactionEvent ('Commit Transaction ' , $ connection );
359
376
});
360
377
361
378
$ db ->getEventDispatcher ()->listen ([
362
379
\Illuminate \Database \Events \TransactionRolledBack::class,
363
380
'connection.*.rollingBack ' ,
364
381
], function ($ transaction ) use ($ queryCollector ) {
365
- $ queryCollector ->collectTransactionEvent ('Rollback Transaction ' , $ transaction ->connection );
382
+
383
+ if ($ transaction instanceof \Illuminate \Database \Events \TransactionRolledBack) {
384
+ $ connection = $ transaction ->connection ;
385
+ } else {
386
+ $ connection = $ transaction ;
387
+ }
388
+
389
+ $ queryCollector ->collectTransactionEvent ('Rollback Transaction ' , $ connection );
366
390
});
367
391
} catch (\Exception $ e ) {
368
392
$ this ->addThrowable (
0 commit comments