public async void CustomNetworkEvent() { OkHttpClient okHttpClient = new OkHttpClient(); Request request = new Request.Builder() .Url(CUSTOMURL) .Post(RequestBody.Create(Square.OkHttp3.MediaType.Parse("text/x-markdown; charset=utf-8"), REQUESTBODY)) .Build(); // Define custom network event NetworkMeasure networkMeasure = APMS.Instance.CreateNetworkMeasure(CUSTOMURL, "POST"); networkMeasure.SetBytesSent(request.Headers().ByteCount()); long bytesReceive = 0L; networkMeasure.Start(); try { Response response = await okHttpClient.NewCall(request).ExecuteAsync(); networkMeasure.SetStatusCode(response.Code()); if (response.Body() != null) { networkMeasure.SetBytesReceived(response.Body().ContentLength()); networkMeasure.SetContentType(response.Body().ContentType().ToString()); bytesReceive = DealResponseBody(response.Body()); response.Body().Close(); } networkMeasure.PutProperty("Property", bytesReceive.ToString()); networkMeasure.Stop(); } catch (Exception ex) { networkMeasure.SetStatusCode(0); networkMeasure.PutProperty("Error Message", ex.Message); networkMeasure.PutProperty("Bytes", bytesReceive.ToString()); networkMeasure.Stop(); } }