你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
CosmosDiagnostics.ToString 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取 Azure Cosmos DB 数据库服务中的字符串字段 CosmosDiagnostics 实例。
public abstract string ToString ();
override this.ToString : unit -> string
Public MustOverride Function ToString () As String
返回
Azure Cosmos DB 数据库服务中的字符串字段 CosmosDiagnostics 实例。
示例
在使用之前,不要急切地具体化诊断,以避免不必要的分配,仅在需要时才调用 ToString。 可以根据延迟或错误有条件地捕获诊断:
try
{
ItemResponse<Book> response = await container.CreateItemAsync<Book>(item: testItem);
if (response.Diagnostics.GetClientElapsedTime() > ConfigurableSlowRequestTimeSpan)
{
// Log the diagnostics and add any additional info necessary to correlate to other logs
logger.LogInformation("Operation took longer than expected, Diagnostics: {Diagnostics}");
}
}
catch (CosmosException cosmosException)
{
// Log the full exception including the stack trace
logger.LogError(cosmosException);
// The Diagnostics can be logged separately if required.
logger.LogError("Cosmos DB call failed with {StatusCode}, {SubStatusCode}, Diagnostics: {Diagnostics}", cosmosException.StatusCode, cosmosException.SubStatusCode, cosmosException.Diagnostics);
}
注解
CosmosDiagnostics 实现延迟具体化,仅在调用 时 ToString() 具体化。