/// <summary> /// OnMethodBegin callback /// </summary> /// <typeparam name="TTarget">Type of the target</typeparam> /// <typeparam name="TRequestData">Type of the request</typeparam> /// <param name="instance">Instance value, aka `this` of the instrumented method.</param> /// <param name="requestData">The request data</param> /// <returns>Calltarget state value</returns> internal static CallTargetState OnMethodBegin <TTarget, TRequestData>(TTarget instance, TRequestData requestData) { var requestDataV5 = new RequestDataV5(requestData); var scope = ElasticsearchNetCommon.CreateScope(Tracer.Instance, ElasticsearchV5Constants.IntegrationId, instance.DuckCast <RequestPipelineStruct>(), requestDataV5); return(new CallTargetState(scope, requestDataV5)); }
/// <summary> /// OnMethodBegin callback /// </summary> /// <typeparam name="TTarget">Type of the target</typeparam> /// <typeparam name="THttpMethod">The type of the HttpMethod parameter</typeparam> /// <typeparam name="TPostData">The type of the PostData parameter</typeparam> /// <typeparam name="TRequestParameters">The type of the request parameters</typeparam> /// <param name="instance">Instance value, aka `this` of the instrumented method.</param> /// <param name="method">The HTTP method of the request</param> /// <param name="path">The path of the request</param> /// <param name="cancellationToken">The cancellation token</param> /// <param name="postData">The payload of the request</param> /// <param name="requestParameters">The parameters of the request</param> /// <returns>Calltarget state value</returns> internal static CallTargetState OnMethodBegin <TTarget, THttpMethod, TPostData, TRequestParameters>(TTarget instance, THttpMethod method, string path, CancellationToken cancellationToken, TPostData postData, TRequestParameters requestParameters) { var scope = ElasticsearchNetCommon.CreateScope(Tracer.Instance, ElasticsearchV7Constants.IntegrationId, path, method.ToString(), requestParameters, out var tags); return(new CallTargetState(scope, tags)); }
/// <summary> /// OnMethodBegin callback /// </summary> /// <typeparam name="TTarget">Type of the target</typeparam> /// <typeparam name="TRequestData">Type of the request</typeparam> /// <param name="instance">Instance value, aka `this` of the instrumented method.</param> /// <param name="requestData">The request data</param> /// <param name="cancellationToken">The cancellation token</param> /// <returns>Calltarget state value</returns> internal static CallTargetState OnMethodBegin <TTarget, TRequestData>(TTarget instance, TRequestData requestData, CancellationToken cancellationToken) { var scope = ElasticsearchNetCommon.CreateScope(Tracer.Instance, ElasticsearchV6Constants.IntegrationId, instance.DuckCast <RequestPipelineStruct>(), new RequestDataV6(requestData)); return(new CallTargetState(scope)); }