Utiliser des frameworks de journalisation .NET ou appeler l'API

Il existe plusieurs façons d'utiliser Cloud Logging à partir de votre application .NET :

Utiliser un fournisseur de journalisation Google pour le framework de journalisation standard .NET

Vous pouvez activer Cloud Logging pour les applications .NET en utilisant les bibliothèques Google.Cloud.Diagnostics pour .NET.

  • Pour les applications qui ciblent ASP.NET Core 3 ou une version ultérieure, utilisez la bibliothèque Google.Cloud.Diagnostics.AspNetCore3. Consultez la documentation Google.Cloud.Diagnostics.AspNetCore3 pour obtenir plus d'informations et d'exemples.
  • Pour les applications qui ciblent des versions antérieures d'ASP.NET Core, utilisez la bibliothèque Google.Cloud.Diagnostics.AspNetCore. Consultez la documentation Google.Cloud.Diagnostics.AspNetCore pour obtenir plus d'informations et d'exemples.
  • Pour les applications qui ciblent des frameworks autres que ASP.NET Core, utilisez la bibliothèque Google.Cloud.Diagnostics.Common. Consultez la documentation Google.Cloud.Diagnostics.Common pour obtenir plus d'informations et d'exemples.

Utiliser un fournisseur Google Log4Net

La bibliothèque Google.Cloud.Logging.Log4Net met en œuvre un fournisseur Log4Net pour Cloud Logging. Pour obtenir des exemples montrant comment configurer et utiliser cette bibliothèque, consultez la documentation de Google.Cloud.Logging.Log4Net.

Utiliser Google.Cloud.Logging.V2 pour appeler directement l'API Logging

Vous pouvez également écrire des journaux en appelant l'API Cloud Logging à l'aide de la bibliothèque cliente Google.Cloud.Logging.V2. Vous pouvez installer cette bibliothèque à partir de [NuGet][lib-nuget].

Une fois le fichier Google.Cloud.Logging.V2 installé, vous pouvez commencer à envoyer les journaux de votre application à Cloud Logging. Ajoutez pour cela les instructions suivantes au code de votre application :

using Google.Cloud.Logging.V2;
using Google.Cloud.Logging.Type;
using Google.Cloud.Api;

Personnalisez la méthode suivante et ajoutez-la au code de l'application :

private void WriteLogEntry(string logId)
{
    var client = LoggingServiceV2Client.Create();
    LogName logName = new LogName(s_projectId, logId);
    var jsonPayload = new Struct()
    {
        Fields =
        {
            { "name", Value.ForString("King Arthur") },
            { "quest", Value.ForString("Find the Holy Grail") },
            { "favorite_color", Value.ForString("Blue") }
        }
    };
    LogEntry logEntry = new LogEntry
    {
        LogNameAsLogName = logName,
        Severity = LogSeverity.Info,
        JsonPayload = jsonPayload
    };
    MonitoredResource resource = new MonitoredResource { Type = "global" };
    IDictionary<string, string> entryLabels = new Dictionary<string, string>
    {
        { "size", "large" },
        { "color", "blue" }
    };
    client.WriteLogEntries(logName, resource, entryLabels,
        new[] { logEntry }, _retryAWhile);
    Console.WriteLine($"Created log entry in log-id: {logId}.");
}

Écrivez un code de journalisation qui appelle WriteLogEntry(). L'entrée de journal générée se trouvera dans l'explorateur de journaux sous la ressource Global.

Dans le panneau de navigation de la console Google Cloud, sélectionnez Logging, puis Explorateur de journaux :

Accéder à l'explorateur de journaux

Ressources