Utiliser ASP.NET ou appeler l'API

La bibliothèque cliente Stackdriver Logging peut être employée de trois façons :

Option 1 : Utiliser une intégration ASP.NET Core

Google.Cloud.Diagnostics.AspNetCore est une bibliothèque qui envoie vos journaux ASP.NET standards à Stackdriver Logging.

Pour commencer la journalisation à l'aide de Google.Cloud.Diagnostics.AspNetCore, installez la bibliothèque en exécutant l'une des commandes suivantes :

Gestionnaire de packages

PM> Install-Package Google.Cloud.Diagnostics.AspNetCore -Version 2.0.1

CLI .NET

> dotnet add package Google.Cloud.Diagnostics.AspNetCore --version 2.0.1

Appliquez ensuite les modifications ci-dessous à votre fichier Startup.cs :

  1. Ajoutez les instructions d'utilisation suivantes en haut du fichier Startup.cs :

    using Google.Cloud.Diagnostics.AspNetCore;
    using Microsoft.Extensions.Logging;
    
  2. Modifiez la fonction Configure. Incluez un objet ILoggerFactory loggerFactory et ajoutez un appel à loggerFactory.AddGoogle("YOUR-PROJECT-ID") :

    public void Configure(IApplicationBuilder app, IHostingEnvironment env,
        ILoggerFactory loggerFactory)
    {
        // Log to Google.
        loggerFactory.AddGoogle("YOUR-PROJECT-ID");
    
  3. Compilez et exécutez le code dans Visual Studio. Affichez les entrées de journal dans la visionneuse de journaux de Stackdriver Logging sous la ressource Global.

    Accéder à la visionneuse de journaux

Option 2 : Utiliser une intégration Log4Net

Log4Net est une bibliothèque Apache qui vous permet de générer des entrées de journal pour diverses cibles de sortie.

Pour commencer la journalisation à l'aide de l'intégration Log4Net, installez la bibliothèque Google.Cloud.Logging.Log4Net en exécutant la commande suivante :

    PM> Install-Package Google.Cloud.Logging.Log4Net -Version 2.2.1

Ensuite, procédez comme suit :

  1. Ajoutez une section de configuration XML Log4Net au fichier Web.config de l'application Web contenant le code suivant :

    <configuration>
      <configSections>
        <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
      </configSections>
      <log4net>
        <appender name="CloudLogger" type="Google.Cloud.Logging.Log4Net.GoogleStackdriverAppender,Google.Cloud.Logging.Log4Net">
          <layout type="log4net.Layout.PatternLayout">
            <conversionPattern value="%-4timestamp [%thread] %-5level %logger %ndc - %message" />
          </layout>
          <projectId value="YOUR-PROJECT-ID" />
          <logId value="mySampleLog" />
        </appender>
        <root>
          <level value="ALL" />
          <appender-ref ref="CloudLogger" />
        </root>
      </log4net>
  2. Ajoutez la ligne de code suivante au fichier Global.asax.cs de l'application pour configurer l'utilisation de Stackdriver Logging avec Log4Net :

    log4net.Config.XmlConfigurator.Configure();
    

    Une fois que vous avez ajouté la ligne précédente au code, modifiez la méthode Application_Start() dans Global.asax.cs comme suit :

            protected void Application_Start()
            {
                GlobalConfiguration.Configure(WebApiConfig.Register);
    
                // Configure log4net to use Stackdriver logging from the XML configuration file.
                log4net.Config.XmlConfigurator.Configure();
            }
    
  3. Pour utiliser log4net dans le code de l'application, ajoutez l'instruction suivante afin d'inclure la bibliothèque cliente :

    using log4net;
    
  4. Ajoutez le code suivant à l'application pour écrire les journaux qui apparaîtront dans la visionneuse de journaux de Stackdriver sous la ressource Global. Le nom du journal est spécifié dans le fichier Web.config :

                        // Retrieve a logger for this context.
                        ILog log = LogManager.GetLogger(typeof(WebApiConfig));
    
                        // Log some information to Google Stackdriver Logging.
                        log.Info("Hello World.");
    
  5. Compilez et exécutez le code dans Visual Studio. Affichez les entrées de journal dans la visionneuse de journaux de Stackdriver Logging sous la ressource Global.

    Accéder à la visionneuse de journaux

Option 3 : Écrire des journaux personnalisés à l'aide de l'API Stackdriver Logging

Vous pouvez également écrire des journaux personnalisés en appelant directement l'API Stackdriver Logging.

Pour commencer la journalisation à l'aide de Google.Cloud.Logging.V2, installez la bibliothèque en exécutant l'une des commandes suivantes :

Gestionnaire de packages

PM> Install-Package Google.Cloud.Logging.V2 -Version 2.2.0

CLI .NET

> dotnet add package Google.Cloud.Logging.V2 --version 2.2.0

Une fois le client Stackdriver Logging installé, vous pouvez commencer à envoyer les journaux de votre application à Stackdriver 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, string message)
{
    var client = LoggingServiceV2Client.Create();
    LogName logName = new LogName(s_projectId, logId);
    LogEntry logEntry = new LogEntry
    {
        LogName = logName.ToString(),
        Severity = LogSeverity.Info,
        TextPayload = $"{typeof(LoggingSample).FullName} - {message}"
    };
    MonitoredResource resource = new MonitoredResource { Type = "global" };
    IDictionary<string, string> entryLabels = new Dictionary<string, string>
    {
        { "size", "large" },
        { "color", "red" }
    };
    client.WriteLogEntries(LogNameOneof.From(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 créée apparaît dans la visionneuse de journaux sous la ressource Global :

Accéder à la visionneuse de journaux

Pour en savoir plus sur la visionneuse de journaux, consultez la section Afficher les journaux.

Cette page vous a-t-elle été utile ? Évaluez-la :

Envoyer des commentaires concernant…

Stackdriver Logging
Besoin d'aide ? Consultez notre page d'assistance.