.NET Agent v2.3.5
2024年11月04日
-
New
.NET CoreでUser Transaction機能を追加-
次の例を参照にしてください。 接続者数のモニタリングが必要ない場合は、ユーザー識別項目に空の文字列を入力します。
using System;
class Program
{
static void Main(string[] args)
{
//トレース開始(ドメイン、Url、ユーザー識別)
WhatapDiagnostic.TraceStart("127.0.0.1", "/api/test", "user123");
try
{
//ステップ開始
WhatapDiagnostic.StepStart("test Step");
//ユーザーコード領域
//ステップ終了
WhatapDiagnostic.StepStop();
}
catch (Exception ex)
{
//例外発生時の診断情報に例外を記録
WhatapDiagnostic.SetExceptionForTrace(ex);
}
finally
{
//トレース終了
WhatapDiagnostic.TraceStop();
}
}
}ノート.NET Frameworkは準備中です。
-
WhatapDiagnosticコードは次の通りです。 形式に関係なく
diagnosticSource.Write(…)
内容だけ正確であればいいです。using System.Diagnostics;å
public static class WhatapDiagnostic
{
private static readonly DiagnosticSource diagnosticSource = new DiagnosticListener("WhatapDiagnosticListener");
public static void TraceStart(string host, string url, string userId)
{
if (diagnosticSource.IsEnabled("Whatap.Diagnostic.Trace.Start"))
{
diagnosticSource.Write("Whatap.Diagnostic.Trace.Start", new { Host = host, Url = url, UserId = userId });
Console.WriteLine("Whatap.Diagnostic.Trace.Start!");
}
}
public static void SetExceptionForTrace(Exception exception)
{
if (diagnosticSource.IsEnabled("Whatap.Diagnostic.Trace.Exception"))
{
diagnosticSource.Write("Whatap.Diagnostic.Trace.Exception", exception);
}
}
public static void StepStart(string message)
{
diagnosticSource.Write("Whatap.Diagnostic.Step.Start", message);
}
public static void StepStop()
{
diagnosticSource.Write("Whatap.Diagnostic.Step.Stop", new { });
}
public static void TraceStop()
{
if (diagnosticSource.IsEnabled("Whatap.Diagnostic.Trace.Stop"))
{
diagnosticSource.Write("Whatap.Diagnostic.Trace.Stop", new { });
}
}
public static void UserLog(string message)
{
if (diagnosticSource.IsEnabled("Whatap.Diagnostic.UserLog"))
{
diagnosticSource.Write("Whatap.Diagnostic.UserLog", message);
}
}
}
-
-
New
Method hookのサポート-
メソッド名を指定してモニタリングできます。 次の設定を参照してください。
hook_methods_enabled=true
hook_methods_prefix=System.Net.Http.HttpClient., System.Net.WebRequest., System.Data., System.Net.Http.
hook_methods_ignores=get,set-
hook_methods_enabled
オプションの値をtrue
に設定します。 -
hook_methods_prefix
オプションの値は、先頭の一致時にモニタリングの対象となります。 コンマ(,)で分離します。 -
hook_methods_ignore
オプションの値は、先頭の一致時にモニタリング対象から除外されます。
-
-
-
New
WebClient.DownloadStringメソッドモニタリングサポートの追加 -
Changed
response bodyのオプション処理-
文字列エンコードに関連するエラーが発見され、デフォルト設定の代わりに有効オプションが追加されました。
-
profile_http_response_body_enabled
オプションのデフォルト値はfalse
です。
ノート文字列エンコード関連のサポートは開発中です。
-
-
Changed
.NET FrameworkバージョンのRedis出力フォーマットの変更- .Net Coreの出力方式と統一して飾り効果が適用されました。
-
Deprecate
trace_db_command_methods
オプションの削除-
モニタリング対象の自動処理により、現在そのオプションは必要ありません。
-
モニタリング対象から除外されたメソッドは、Method hookを利用して処理できます。
hook_methods_enabled=true
hook_methods_prefix=System.Data., ...
-
ダウンロード
-
.NET runtime 4.6.1未満またはWindows 2012未満
Windows Server 2008 R2以降をサポートします。