Question

Quelqu'un a-t-il intégré ELMAH dans son environnement SharePoint?

Je suppose que c'est possible car tout est ASP.net, mais je me demandais simplement si quelqu'un l'avait fait et s'il y avait une explication sur la façon de le réaliser?

Était-ce utile?

La solution

Nous utilisons ELMAH dans notre environnement MOSS 2007. Depuis ELMAH utilise HttpHandlers et est configuré via le web.config, l'activer était un jeu d'enfant. Ajoutez simplement les éléments ELMAH à web.config pour l’application que vous exécutez dans SharePoint.

Si vous souhaitez que ELMAH signale les erreurs à un niveau supérieur à celui de votre application personnalisée, ajoutez-le à SharePoint web.config.

Autres conseils

Une chose qui est importante lors de la configuration d’ELMAH, ou de la plupart des HTTPModules dans Sharepoint, est qu’ils doivent figurer au début de la section httpModules. Sinon, SharePoint avalera l’exception et les fonctionnalités d’ELMAH ne seront pas invoquées

Works

<clear />
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah"/>  
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/>
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah"/>
<add name="SPRequest" type="Microsoft.SharePoint.ApplicationRuntime.SPRequestModule, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
<add name="OutputCache" type="System.Web.Caching.OutputCacheModule" />
<add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" />
     ... Rest of SharePoint modules....

Ne fonctionne pas

<clear />
<add name="SPRequest" type="Microsoft.SharePoint.ApplicationRuntime.SPRequestModule, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
<add name="OutputCache" type="System.Web.Caching.OutputCacheModule" />
<add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" />
     ... Rest of SharePoint modules....
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah"/>  
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/>
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah"/>

Il n'y a pas de magie à cela, connectez-le comme vous le feriez sur n'importe quel autre site ASP.NET.

Voici les entrées de configuration à ajouter dans le fichier web.config de l'application Web SharePoint

.

Ajouter sous la configuration

 <configSections>
    <sectionGroup name="elmah">

    <section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler, Elmah" />

    <section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler, Elmah" />

    <section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler, Elmah" />

    <section name="errorFilter" requirePermission="false" type="Elmah.ErrorFilterSectionHandler, Elmah" />

    </sectionGroup>
 </configSections>

Ajouter une section de chaîne de connexion

<connectionStrings>
 <add name="elmah-express" connectionString="Data Source=[server name];Initial Catalog=  [ELMAH_customlogging];User ID=testuser;Password=Welcome1;" />

</connectionStrings>

Ajouter une section elmah juste en dessous de la section connectionstring

<elmah>

  <security allowRemoteAccess="0" />

  <errorLog type="Elmah.SqlErrorLog, Elmah" connectionStringName="elmah-express" />
</elmah>

Ajouter un gestionnaire et une entrée de module dans les sections httphandlers et httpmodules sous system.web

  <httpHandlers>

      <add verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah"/>

   </httpHandlers>

   <httpModules>

      <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/>
    </httpModules>

Ajouter une entrée de gestionnaire et de module dans la section des gestionnaires et des modules sous system.webserver

    <modules runAllManagedModulesForAllRequests="true">

    <remove name="ErrorLog"/>

     <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" preCondition="managedHandler" />

     <add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" preCondition="managedHandler" />

     <add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" preCondition="managedHandler" />

     <add name="ErrorTweet" type="Elmah.ErrorTweetModule, Elmah" preCondition="managedHandler" />
     </modules>

     <handlers>

     <add name="Elmah" path="elmah.axd" verb="POST,GET,HEAD" type="Elmah.ErrorLogPageFactory, Elmah" preCondition="integratedMode" />

     </handlers>

Veuillez vous reporter au lien ci-dessous pour la mise en œuvre d'elmah dans le sharepoint

http://sidteche.blogspot.in/ 2014/08 / implant-elmah-custom-logging-in.html

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top