Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di mexican
    Registrato dal
    Oct 2001
    residenza
    cava de tirreni
    Messaggi
    3,541

    log4net non salva nel DB

    Ciao a tutti, sto cercando di salvare il log usando log4net nel database

    Ho installato log4net dalla gestione pacchetti
    Poi nel web config ho inserito:

    codice:
    <configSections>    
        <!-- Log4Net -->
        <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
      </configSections>
    
    <log4net>
    
        <!--AdoNet appender is use for write log file into sql server-->
    
        <appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender">
    
          <bufferSize value="1000" />
    
          <connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
    
          <connectionString value="data source=localhost/SVILUPPO;Initial Catalog=MIODB;user id=sa;password=myPassword;" />
    
          <commandText value="INSERT INTO AppLog ([Date],[Thread],[Level],[Logger],[Message],[Exception]) VALUES (@log_date, @thread, @log_level, @logger, @message, @exception)" />
    
          <parameter>
            <parameterName value="@log_date" />
            <dbType value="DateTime" />
            <layout type="log4net.Layout.RawTimeStampLayout" />
          </parameter>
    
          <parameter>
            <parameterName value="@thread" />
            <dbType value="String" />
            <size value="255" />
            <layout type="log4net.Layout.PatternLayout">
              <conversionPattern value="%thread" />
            </layout>
          </parameter>
    
          <parameter>
            <parameterName value="@log_level" />
            <dbType value="String" />
            <size value="50" />
            <layout type="log4net.Layout.PatternLayout">
              <conversionPattern value="%level" />
            </layout>
          </parameter>
    
          <parameter>
            <parameterName value="@logger" />
            <dbType value="String" />
            <size value="255" />
            <layout type="log4net.Layout.PatternLayout">
              <conversionPattern value="%logger" />
            </layout>
          </parameter>
    
          <parameter>
            <parameterName value="@message" />
            <dbType value="String" />
            <size value="4000" />
            <layout type="log4net.Layout.PatternLayout">
              <conversionPattern value="%message" />
            </layout>
          </parameter>
    
          <parameter>
            <parameterName value="@exception" />
            <dbType value="String" />
            <size value="2000" />
            <layout type="log4net.Layout.ExceptionLayout" />
          </parameter>
    
        </appender>
    
        <!--Add appender which you want to use, You can add more then one appender . Like if you want save log both plain text or sql server ,Add both appender.-->
    
        <root>
          <level value="ALL" />
          <appender-ref ref="AdoNetAppender" />
          <!--Enable this line if you want write log file into sql server-->
        </root>
    
      </log4net>
    nel global.asax ho inserito in Application_Start:
    log4net.Config.XmlConfigurator.Configure();

    E nella pagina dove voglio loggare:
    codice:
    private static ILog log = LogManager.GetLogger(typeof(Login));
    
    log.Debug("Debug message");
    log.Warn("Warn message");
    log.Error("Error message");
    log.Fatal("Fatal message");
    Però non mi salva niente cosa manca?

  2. #2
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,886
    1) sei sicuro che passi per il metodo XmlConfigurator.Configure() nell'application_start ?
    magari metti un breakpoint per vedere se ci passa.

    2) hai copiato l'esempio da qui ? se si, ci sono anche le risposte...

    http://stackoverflow.com/questions/1...-using-c-sharp


    (io l'ho usato con i files di testo e mi ha fatto sbattere non poco in configurazione comunque)



  3. #3
    Utente di HTML.it L'avatar di mexican
    Registrato dal
    Oct 2001
    residenza
    cava de tirreni
    Messaggi
    3,541
    Quote Originariamente inviata da djciko Visualizza il messaggio
    1) sei sicuro che passi per il metodo XmlConfigurator.Configure() nell'application_start ?
    magari metti un breakpoint per vedere se ci passa.

    2) hai copiato l'esempio da qui ? se si, ci sono anche le risposte...

    http://stackoverflow.com/questions/1...-using-c-sharp


    (io l'ho usato con i files di testo e mi ha fatto sbattere non poco in configurazione comunque)


    Non ho copiato da li ma è la stessa cosa... che ho fatto io.
    Controllato in debug... e ci passo nell'application start e carica la configurazione.
    Ma niente nessun salvataggio sul database.
    Da cosa può dipendere?

  4. #4
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,886
    vai per step e controlla innanzitutto che raggiungi il db..

    poi, in una delle risposte su so:

    What messes with everyone is copy/paste without knowing the details. Example: <bufferSize value="100" /> That means that it WILL NOT log to database table until it hits 100 entries in the buffer to write to the db table.
    For testing/debug set buffer to 1

  5. #5
    Utente di HTML.it L'avatar di mexican
    Registrato dal
    Oct 2001
    residenza
    cava de tirreni
    Messaggi
    3,541
    Quote Originariamente inviata da djciko Visualizza il messaggio
    vai per step e controlla innanzitutto che raggiungi il db..

    poi, in una delle risposte su so:

    What messes with everyone is copy/paste without knowing the details. Example: <bufferSize value="100" /> That means that it WILL NOT log to database table until it hits 100 entries in the buffer to write to the db table.
    For testing/debug set buffer to 1
    Si questa cosa l'ho letta pure io ed infatto ho settato il buffer ad 1, ma non cambia niente.

    Il Db lo raggiungo perchè ho provato la stringa di connessione.

    Ho messo pure un try catch ma non va in errore niente

  6. #6
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,886
    non credo che una trycatch ti mostri il problema, dovresti debuggare proprio Log4net come suggerito
    https://goo.gl/qcuivR


    inoltre, hai banalmente provato a fare una insert di prova per vedere che tuttti i tipi di dato corrispondono ?
    Ultima modifica di djciko; 18-10-2016 a 15:49

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.