|
4 | 4 | using System; |
5 | 5 | using System.Collections.Generic; |
6 | 6 | using System.Diagnostics.Tracing; |
| 7 | +using System.Linq; |
7 | 8 | using System.Reflection; |
8 | 9 | using System.Threading.Tasks; |
9 | 10 | using Azure.Core.Diagnostics; |
@@ -171,10 +172,6 @@ protected ServiceBusEventSource() : base(EventSourceName) |
171 | 172 | internal const int ProcessorErrorHandlerThrewExceptionEvent = 94; |
172 | 173 | internal const int ScheduleTaskFailedEvent = 95; |
173 | 174 |
|
174 | | - internal const int PluginStartEvent = 96; |
175 | | - internal const int PluginCompleteEvent = 97; |
176 | | - internal const int PluginExceptionEvent = 98; |
177 | | - |
178 | 175 | internal const int MaxMessagesExceedsPrefetchEvent = 99; |
179 | 176 | internal const int SendLinkClosedEvent = 100; |
180 | 177 | internal const int ManagementLinkClosedEvent = 101; |
@@ -262,14 +259,26 @@ public virtual void ReceiveMessageStart(string identifier, int messageCount) |
262 | 259 | } |
263 | 260 | } |
264 | 261 |
|
265 | | - [Event(ReceiveMessageCompleteEvent, Level = EventLevel.Informational, Message = "{0}: ReceiveBatchAsync done. Received '{1}' messages")] |
| 262 | + [NonEvent] |
266 | 263 | public virtual void ReceiveMessageComplete( |
267 | 264 | string identifier, |
268 | | - int messageCount) |
| 265 | + IReadOnlyList<ServiceBusReceivedMessage> messages) |
269 | 266 | { |
270 | 267 | if (IsEnabled()) |
271 | 268 | { |
272 | | - WriteEvent(ReceiveMessageCompleteEvent, identifier, messageCount); |
| 269 | + ReceiveMessageCompleteCore(identifier, messages.Count, StringUtility.GetFormattedLockTokens(messages.Select(m => m.LockTokenGuid))); |
| 270 | + } |
| 271 | + } |
| 272 | + |
| 273 | + [Event(ReceiveMessageCompleteEvent, Level = EventLevel.Informational, Message = "{0}: ReceiveBatchAsync done. Received '{1}' messages. LockTokens = {2}")] |
| 274 | + private void ReceiveMessageCompleteCore( |
| 275 | + string identifier, |
| 276 | + int messageCount, |
| 277 | + string lockTokens) |
| 278 | + { |
| 279 | + if (IsEnabled()) |
| 280 | + { |
| 281 | + WriteEvent(ReceiveMessageCompleteEvent, identifier, messageCount, lockTokens); |
273 | 282 | } |
274 | 283 | } |
275 | 284 |
|
@@ -809,30 +818,57 @@ public void ProcessorErrorHandlerThrewException(string exception) |
809 | 818 | } |
810 | 819 | } |
811 | 820 |
|
812 | | - [Event(ProcessorMessageHandlerStartEvent, Level = EventLevel.Informational, Message = "{0}: User message handler start: Message: SequenceNumber: {1}")] |
813 | | - public void ProcessorMessageHandlerStart(string identifier, long sequenceNumber) |
| 821 | + [NonEvent] |
| 822 | + public void ProcessorMessageHandlerStart(string identifier, long sequenceNumber, Guid lockToken) |
814 | 823 | { |
815 | 824 | if (IsEnabled()) |
816 | 825 | { |
817 | | - WriteEvent(ProcessorMessageHandlerStartEvent, identifier, sequenceNumber); |
| 826 | + ProcessorMessageHandlerStartCore(identifier, sequenceNumber, lockToken.ToString()); |
818 | 827 | } |
819 | 828 | } |
820 | 829 |
|
821 | | - [Event(ProcessorMessageHandlerCompleteEvent, Level = EventLevel.Informational, Message = "{0}: User message handler complete: Message: SequenceNumber: {1}")] |
822 | | - public void ProcessorMessageHandlerComplete(string identifier, long sequenceNumber) |
| 830 | + [Event(ProcessorMessageHandlerStartEvent, Level = EventLevel.Informational, Message = "{0}: User message handler start: Message: SequenceNumber: {1}, LockToken: {2}")] |
| 831 | + private void ProcessorMessageHandlerStartCore(string identifier, long sequenceNumber, string lockToken) |
823 | 832 | { |
824 | 833 | if (IsEnabled()) |
825 | 834 | { |
826 | | - WriteEvent(ProcessorMessageHandlerCompleteEvent, identifier, sequenceNumber); |
| 835 | + WriteEvent(ProcessorMessageHandlerStartEvent, identifier, sequenceNumber, lockToken); |
827 | 836 | } |
828 | 837 | } |
829 | 838 |
|
830 | | - [Event(ProcessorMessageHandlerExceptionEvent, Level = EventLevel.Error, Message = "{0}: User message handler complete: Message: SequenceNumber: {1}, Exception: {2}")] |
831 | | - public void ProcessorMessageHandlerException(string identifier, long sequenceNumber, string exception) |
| 839 | + [NonEvent] |
| 840 | + public void ProcessorMessageHandlerComplete(string identifier, long sequenceNumber, Guid lockToken) |
832 | 841 | { |
833 | 842 | if (IsEnabled()) |
834 | 843 | { |
835 | | - WriteEvent(ProcessorMessageHandlerExceptionEvent, identifier, sequenceNumber, exception); |
| 844 | + ProcessorMessageHandlerCompleteCore(identifier, sequenceNumber, lockToken.ToString()); |
| 845 | + } |
| 846 | + } |
| 847 | + |
| 848 | + [Event(ProcessorMessageHandlerCompleteEvent, Level = EventLevel.Informational, Message = "{0}: User message handler complete: Message: SequenceNumber: {1}, LockToken: {2}")] |
| 849 | + private void ProcessorMessageHandlerCompleteCore(string identifier, long sequenceNumber, string lockToken) |
| 850 | + { |
| 851 | + if (IsEnabled()) |
| 852 | + { |
| 853 | + WriteEvent(ProcessorMessageHandlerCompleteEvent, identifier, sequenceNumber, lockToken); |
| 854 | + } |
| 855 | + } |
| 856 | + |
| 857 | + [NonEvent] |
| 858 | + public void ProcessorMessageHandlerException(string identifier, long sequenceNumber, string exception, Guid lockToken) |
| 859 | + { |
| 860 | + if (IsEnabled()) |
| 861 | + { |
| 862 | + ProcessorMessageHandlerExceptionCore(identifier, sequenceNumber, exception, lockToken.ToString()); |
| 863 | + } |
| 864 | + } |
| 865 | + |
| 866 | + [Event(ProcessorMessageHandlerExceptionEvent, Level = EventLevel.Error, Message = "{0}: User message handler complete: Message: SequenceNumber: {1}, Exception: {2}, LockToken: {3}")] |
| 867 | + private void ProcessorMessageHandlerExceptionCore(string identifier, long sequenceNumber, string exception, string lockToken) |
| 868 | + { |
| 869 | + if (IsEnabled()) |
| 870 | + { |
| 871 | + WriteEvent(ProcessorMessageHandlerExceptionEvent, identifier, sequenceNumber, exception, lockToken); |
836 | 872 | } |
837 | 873 | } |
838 | 874 |
|
@@ -1501,35 +1537,6 @@ public void CreateControllerException(string connectionManager, string exception |
1501 | 1537 | } |
1502 | 1538 | #endregion |
1503 | 1539 |
|
1504 | | - #region plugins |
1505 | | - [Event(PluginStartEvent, Level = EventLevel.Verbose, Message = "User plugin {0} called on message {1}")] |
1506 | | - public void PluginCallStarted(string pluginName, string messageId) |
1507 | | - { |
1508 | | - if (IsEnabled()) |
1509 | | - { |
1510 | | - WriteEvent(PluginStartEvent, pluginName, messageId); |
1511 | | - } |
1512 | | - } |
1513 | | - |
1514 | | - [Event(PluginCompleteEvent, Level = EventLevel.Verbose, Message = "User plugin {0} completed on message {1}")] |
1515 | | - public void PluginCallCompleted(string pluginName, string messageId) |
1516 | | - { |
1517 | | - if (IsEnabled()) |
1518 | | - { |
1519 | | - WriteEvent(PluginCompleteEvent, pluginName, messageId); |
1520 | | - } |
1521 | | - } |
1522 | | - |
1523 | | - [Event(PluginExceptionEvent, Level = EventLevel.Error, Message = "Exception during {0} plugin execution. MessageId: {1}, Exception {2}")] |
1524 | | - public void PluginCallException(string pluginName, string messageId, string exception) |
1525 | | - { |
1526 | | - if (IsEnabled()) |
1527 | | - { |
1528 | | - WriteEvent(PluginExceptionEvent, pluginName, messageId, exception); |
1529 | | - } |
1530 | | - } |
1531 | | - #endregion |
1532 | | - |
1533 | 1540 | #region misc |
1534 | 1541 | [NonEvent] |
1535 | 1542 | public void ScheduleTaskFailed(Func<Task> task, Exception exception) |
|
0 commit comments