Partager via


CosmosDiagnostics.ToString Méthode

Définition

Obtient le champ CosmosDiagnostics de chaîne instance dans le service de base de données Azure Cosmos DB.

public abstract string ToString ();
override this.ToString : unit -> string
Public MustOverride Function ToString () As String

Retours

Le champ CosmosDiagnostics de chaîne instance dans le service de base de données Azure Cosmos DB.

Exemples

Ne matérialisez pas avec impatience le diagnostics jusqu’au moment de la consommation pour éviter les allocations inutiles, laissez le ToString être appelé uniquement en cas de besoin. Vous pouvez capturer diagnostics de manière conditionnelle, en fonction de la latence ou des erreurs :

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);
}

Remarques

CosmosDiagnostics implémente la matérialisation différée et n’est matérialisée que lorsque ToString() est appelé.

S’applique à