public void FailedToReadCustomServiceMessageHeader(
     Microsoft.ServiceFabric.Services.Remoting.ServiceRemotingMessageHeaders serviceRemotingMessageHeaders,
     System.Exception ex)
 {
     WebApiServiceEventSource.Current.FailedToReadCustomServiceMessageHeader(
         _context,
         serviceRemotingMessageHeaders,
         ex
         );
     _telemetryClient.TrackException(
         ex,
         new System.Collections.Generic.Dictionary <string, string>()
     {
         { "Name", "FailedToReadCustomServiceMessageHeader" },
         { "ServiceName", _context.ServiceName.ToString() },
         { "ServiceTypeName", _context.ServiceTypeName },
         { "ReplicaOrInstanceId", _context.InstanceId.ToString() },
         { "PartitionId", _context.PartitionId.ToString() },
         { "ApplicationName", _context.CodePackageActivationContext.ApplicationName },
         { "ApplicationTypeName", _context.CodePackageActivationContext.ApplicationTypeName },
         { "NodeName", _context.NodeContext.NodeName },
         { "ServiceRemotingMessageHeaders", serviceRemotingMessageHeaders.ToString() },
         { "Message", ex.Message },
         { "Source", ex.Source },
         { "ExceptionTypeName", ex.GetType().FullName },
         { "Exception", ex.AsJson() }
     });
 }
 public void StopCallService(
     System.Fabric.StatelessServiceContext context,
     System.Uri requestUri,
     string serviceMethodName,
     Microsoft.ServiceFabric.Services.Remoting.ServiceRemotingMessageHeaders serviceMessageHeaders,
     FG.ServiceFabric.Services.Remoting.FabricTransport.CustomServiceRequestHeader customServiceRequestHeader)
 {
     if (this.IsEnabled())
     {
         StopCallService(
             context.ServiceName.ToString(),
             context.ServiceTypeName,
             context.InstanceId,
             context.PartitionId,
             context.CodePackageActivationContext.ApplicationName,
             context.CodePackageActivationContext.ApplicationTypeName,
             context.NodeContext.NodeName,
             requestUri.ToString(),
             serviceMethodName,
             (serviceMessageHeaders?.InterfaceId ?? 0),
             (serviceMessageHeaders?.MethodId ?? 0),
             customServiceRequestHeader?.GetHeader("userId"),
             customServiceRequestHeader?.GetHeader("correlationId"));
     }
 }
示例#3
0
 public void CallServiceFailed(
     System.Fabric.StatefulServiceContext context,
     System.Uri requestUri,
     string serviceMethodName,
     Microsoft.ServiceFabric.Services.Remoting.ServiceRemotingMessageHeaders serviceMessageHeaders,
     FG.ServiceFabric.Services.Remoting.FabricTransport.CustomServiceRequestHeader customServiceRequestHeader,
     System.Exception ex)
 {
     if (this.IsEnabled())
     {
         CallServiceFailed(
             context.ServiceName.ToString(),
             context.ServiceTypeName,
             context.ReplicaOrInstanceId,
             context.PartitionId,
             context.CodePackageActivationContext.ApplicationName,
             context.CodePackageActivationContext.ApplicationTypeName,
             context.NodeContext.NodeName,
             requestUri.ToString(),
             serviceMethodName,
             (serviceMessageHeaders?.InterfaceId ?? 0),
             (serviceMessageHeaders?.MethodId ?? 0),
             customServiceRequestHeader?.GetHeader("userId"),
             customServiceRequestHeader?.GetHeader("correlationId"),
             ex.Message,
             ex.Source,
             ex.GetType().FullName,
             ex.AsJson());
     }
 }
示例#4
0
 public void FailedToReadCustomServiceMessageHeader(
     Microsoft.ServiceFabric.Services.Remoting.ServiceRemotingMessageHeaders serviceRemotingMessageHeaders,
     System.Exception ex)
 {
     PersonActorServiceEventSource.Current.FailedToReadCustomServiceMessageHeader(
         _actor,
         serviceRemotingMessageHeaders,
         ex
         );
     _telemetryClient.TrackException(
         ex,
         new System.Collections.Generic.Dictionary <string, string>()
     {
         { "Name", "FailedToReadCustomServiceMessageHeader" },
         { "ActorType", _actor.ActorType.ToString() },
         { "ActorId", _actor.ActorId.ToString() },
         { "ApplicationTypeName", _actor.ApplicationTypeName },
         { "ApplicationName", _actor.ApplicationName },
         { "ServiceTypeName", _actor.ServiceTypeName },
         { "ServiceName", _actor.ToString() },
         { "PartitionId", _actor.PartitionId.ToString() },
         { "ReplicaOrInstanceId", _actor.ReplicaOrInstanceId.ToString() },
         { "NodeName", _actor.NodeName },
         { "InterfaceId", (serviceRemotingMessageHeaders?.InterfaceId ?? 0).ToString() },
         { "MethodId", (serviceRemotingMessageHeaders?.MethodId ?? 0).ToString() },
         { "Message", ex.Message },
         { "Source", ex.Source },
         { "ExceptionTypeName", ex.GetType().FullName },
         { "Exception", ex.AsJson() }
     });
 }
示例#5
0
        public System.IDisposable CallService(
            System.Uri requestUri,
            string serviceMethodName,
            Microsoft.ServiceFabric.Services.Remoting.ServiceRemotingMessageHeaders serviceMessageHeaders,
            FG.ServiceFabric.Services.Remoting.FabricTransport.CustomServiceRequestHeader customServiceRequestHeader)
        {
            return(new ScopeWrapper(new IDisposable[]
            {
                ScopeWrapperWithAction.Wrap(() =>
                {
                    PersonActorServiceEventSource.Current.StartCallService(
                        _actor,
                        requestUri,
                        serviceMethodName,
                        serviceMessageHeaders,
                        customServiceRequestHeader
                        );

                    return new ScopeWrapperWithAction(() =>
                    {
                        PersonActorServiceEventSource.Current.StopCallService(
                            _actor,
                            requestUri,
                            serviceMethodName,
                            serviceMessageHeaders,
                            customServiceRequestHeader
                            );
                    });
                }),


                ScopeWrapperWithAction.Wrap(() =>
                {
                    var callServiceOperationHolder = _telemetryClient.StartOperation <DependencyTelemetry>(requestUri.ToString() ?? "callService");
                    callServiceOperationHolder.Telemetry.Properties.Add("ActorType", _actor.ActorType.ToString());
                    callServiceOperationHolder.Telemetry.Properties.Add("ActorId", _actor.ActorId.ToString());
                    callServiceOperationHolder.Telemetry.Properties.Add("ApplicationTypeName", _actor.ApplicationTypeName);
                    callServiceOperationHolder.Telemetry.Properties.Add("ApplicationName", _actor.ApplicationName);
                    callServiceOperationHolder.Telemetry.Properties.Add("ServiceTypeName", _actor.ServiceTypeName);
                    callServiceOperationHolder.Telemetry.Properties.Add("ServiceName", _actor.ToString());
                    callServiceOperationHolder.Telemetry.Properties.Add("PartitionId", _actor.PartitionId.ToString());
                    callServiceOperationHolder.Telemetry.Properties.Add("ReplicaOrInstanceId", _actor.ReplicaOrInstanceId.ToString());
                    callServiceOperationHolder.Telemetry.Properties.Add("NodeName", _actor.NodeName);
                    callServiceOperationHolder.Telemetry.Properties.Add("RequestUri", requestUri.ToString());
                    callServiceOperationHolder.Telemetry.Properties.Add("ServiceMethodName", serviceMethodName);
                    callServiceOperationHolder.Telemetry.Properties.Add("InterfaceId", (serviceMessageHeaders?.InterfaceId ?? 0).ToString());
                    callServiceOperationHolder.Telemetry.Properties.Add("MethodId", (serviceMessageHeaders?.MethodId ?? 0).ToString());
                    callServiceOperationHolder.Telemetry.Properties.Add("UserId", customServiceRequestHeader?.GetHeader("userId"));
                    callServiceOperationHolder.Telemetry.Properties.Add("CorrelationId", customServiceRequestHeader?.GetHeader("correlationId"));

                    return new ScopeWrapperWithAction(() =>
                    {
                        _telemetryClient.StopOperation <DependencyTelemetry>(callServiceOperationHolder);
                    });
                }),
            }));
        }
示例#6
0
        public System.IDisposable RecieveServiceMessage(
            System.Uri requestUri,
            string serviceMethodName,
            Microsoft.ServiceFabric.Services.Remoting.ServiceRemotingMessageHeaders serviceMessageHeaders,
            FG.ServiceFabric.Services.Remoting.FabricTransport.CustomServiceRequestHeader customServiceRequestHeader)
        {
            return(new ScopeWrapper(new IDisposable[]
            {
                ScopeWrapperWithAction.Wrap(() =>
                {
                    TitleActorServiceEventSource.Current.StartRecieveServiceMessage(
                        _context,
                        requestUri,
                        serviceMethodName,
                        serviceMessageHeaders,
                        customServiceRequestHeader
                        );

                    return new ScopeWrapperWithAction(() =>
                    {
                        TitleActorServiceEventSource.Current.StopRecieveServiceMessage(
                            _context,
                            requestUri,
                            serviceMethodName,
                            serviceMessageHeaders,
                            customServiceRequestHeader
                            );
                    });
                }),


                ScopeWrapperWithAction.Wrap(() =>
                {
                    var recieveServiceMessageOperationHolder = _telemetryClient.StartOperation <RequestTelemetry>(requestUri.ToString() ?? "recieveServiceMessage");
                    recieveServiceMessageOperationHolder.Telemetry.Properties.Add("ServiceName", _context.ServiceName.ToString());
                    recieveServiceMessageOperationHolder.Telemetry.Properties.Add("ServiceTypeName", _context.ServiceTypeName);
                    recieveServiceMessageOperationHolder.Telemetry.Properties.Add("ReplicaOrInstanceId", _context.ReplicaOrInstanceId.ToString());
                    recieveServiceMessageOperationHolder.Telemetry.Properties.Add("PartitionId", _context.PartitionId.ToString());
                    recieveServiceMessageOperationHolder.Telemetry.Properties.Add("ApplicationName", _context.CodePackageActivationContext.ApplicationName);
                    recieveServiceMessageOperationHolder.Telemetry.Properties.Add("ApplicationTypeName", _context.CodePackageActivationContext.ApplicationTypeName);
                    recieveServiceMessageOperationHolder.Telemetry.Properties.Add("NodeName", _context.NodeContext.NodeName);
                    recieveServiceMessageOperationHolder.Telemetry.Properties.Add("RequestUri", requestUri.ToString());
                    recieveServiceMessageOperationHolder.Telemetry.Properties.Add("ServiceMethodName", serviceMethodName);
                    recieveServiceMessageOperationHolder.Telemetry.Properties.Add("InterfaceId", (serviceMessageHeaders?.InterfaceId ?? 0).ToString());
                    recieveServiceMessageOperationHolder.Telemetry.Properties.Add("MethodId", (serviceMessageHeaders?.MethodId ?? 0).ToString());
                    recieveServiceMessageOperationHolder.Telemetry.Properties.Add("UserId", customServiceRequestHeader?.GetHeader("userId"));
                    recieveServiceMessageOperationHolder.Telemetry.Properties.Add("CorrelationId", customServiceRequestHeader?.GetHeader("correlationId"));

                    return new ScopeWrapperWithAction(() =>
                    {
                        _telemetryClient.StopOperation <RequestTelemetry>(recieveServiceMessageOperationHolder);
                    });
                }),
            }));
        }
示例#7
0
 public void CallServiceFailed(
     System.Uri requestUri,
     string serviceMethodName,
     Microsoft.ServiceFabric.Services.Remoting.ServiceRemotingMessageHeaders serviceMessageHeaders,
     FG.ServiceFabric.Services.Remoting.FabricTransport.CustomServiceRequestHeader customServiceRequestHeader,
     System.Exception ex)
 {
     PersonActorServiceEventSource.Current.CallServiceFailed(
         _actor,
         requestUri,
         serviceMethodName,
         serviceMessageHeaders,
         customServiceRequestHeader,
         ex
         );
     _telemetryClient.TrackException(
         ex,
         new System.Collections.Generic.Dictionary <string, string>()
     {
         { "Name", "CallServiceFailed" },
         { "ActorType", _actor.ActorType.ToString() },
         { "ActorId", _actor.ActorId.ToString() },
         { "ApplicationTypeName", _actor.ApplicationTypeName },
         { "ApplicationName", _actor.ApplicationName },
         { "ServiceTypeName", _actor.ServiceTypeName },
         { "ServiceName", _actor.ToString() },
         { "PartitionId", _actor.PartitionId.ToString() },
         { "ReplicaOrInstanceId", _actor.ReplicaOrInstanceId.ToString() },
         { "NodeName", _actor.NodeName },
         { "RequestUri", requestUri.ToString() },
         { "ServiceMethodName", serviceMethodName },
         { "InterfaceId", (serviceMessageHeaders?.InterfaceId ?? 0).ToString() },
         { "MethodId", (serviceMessageHeaders?.MethodId ?? 0).ToString() },
         { "UserId", customServiceRequestHeader?.GetHeader("userId") },
         { "CorrelationId", customServiceRequestHeader?.GetHeader("correlationId") },
         { "Message", ex.Message },
         { "Source", ex.Source },
         { "ExceptionTypeName", ex.GetType().FullName },
         { "Exception", ex.AsJson() }
     });
 }
示例#8
0
 public void FailedToReadCustomServiceMessageHeader(
     System.Fabric.StatefulServiceContext context,
     Microsoft.ServiceFabric.Services.Remoting.ServiceRemotingMessageHeaders serviceRemotingMessageHeaders,
     System.Exception ex)
 {
     if (this.IsEnabled())
     {
         FailedToReadCustomServiceMessageHeader(
             context.ServiceName.ToString(),
             context.ServiceTypeName,
             context.ReplicaOrInstanceId,
             context.PartitionId,
             context.CodePackageActivationContext.ApplicationName,
             context.CodePackageActivationContext.ApplicationTypeName,
             context.NodeContext.NodeName,
             (serviceRemotingMessageHeaders?.InterfaceId ?? 0),
             (serviceRemotingMessageHeaders?.MethodId ?? 0),
             ex.Message,
             ex.Source,
             ex.GetType().FullName,
             ex.AsJson());
     }
 }