Distributed log: Exceptionless installation and deployment

installation steps

  1. First exceptionless rely elasticsearch, and elasticsearch need java environment, so install jdk

  2. Download exceptionless:

    • After the download is complete, unzip into the directory:

    • Right-click on Run as administrator: Start.bat. If the error, then use powershell into the directory, then run. He will help us to download elasticsearch and kabana.

  3. Into the wwwroot folder modify the web.config file:

    1. <? Xml Version = "1.0" encoding = "UTF-8" ?> 
      < The Configuration > 
        < connectionStrings > 
            <-! Exceptionless default user name and password are stored in memory, where the set is stored in redis -> 
          < the Add name = "RedisConnectionString" connectionString = ""  /> 
          ! <- elasticsearch address -> 
          < the Add name = "ElasticSearchConnectionString" connectionString = "HTTP: // localhost: 9200"  /> 
          < the Add name = "LdapConnectionString" connectionString = "" />
        </connectionStrings>
        <appSettings>
          <!-- Base url for the ui used to build links in emails and other places. -->
          <!--exceptionless的地址,注意后面一定要加个!号,不然激活邮箱的地址会失效-->
          <add key="BaseURL" value="http://localhost:50000/#!" />
          <!-- Controls whether SSL is required. Only enable this if you have SSL configured. -->
          <add key="EnableSSL" value="false" />
          <!--
          Dev: Use this mode when debugging. (Outbound emails will not be sent)
          QA: Use this mode when deployed to staging. (Outbound emails restricted)
          Production: Use this mode when deployed to production.
          -->
          <add key="WebsiteMode" value="Production" />
          <!-- Controls whether users can signup. -->
          <add key="EnableAccountCreation" value="true" />
          <!-- Controls whether daily summary emails are sent -->
          <add key="EnableDailySummary" value="true" />
          <!--
            Email Client Settings (Uncomment the section below to change the default email settings)
            There are three valid SmtpEncryption settings: None, SSL and StartTLS
          -->
          <add key="SmtpHost" value="smtp.qq.com" />
          <add key="SmtpPort" value="465" />
          <add key="SmtpEncryption" value="SSL" />
          <add key="SmtpFrom" value="[email protected]" />
          <add key="SmtpUser" value="[email protected]" />
          <add key="SmtpPassword" value="jhmvvgpwfbaoeagi" />
          
          <!-- Folder used to store event post data -->
          <add key="StorageFolder" value="|DataDirectory|\storage" />
          <!-- Runs the jobs in the current website process -->
          <add key="RunJobsInProcess" value="true" />
          <add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />
        </appSettings>
        <system.net>
          <defaultProxy enabled="true" />
        </system.net>
        <system.web>
          <authentication mode="None" />
          <compilation targetFramework="4.6" debug="false" />
          <httpRuntime targetFramework="4.6" maxRequestLength="10000" maxUrlLength="1024" />
          <customErrors mode="RemoteOnly" defaultRedirect="~/error.html" />
        </system.web>
        <system.webServer>
          <modules runAllManagedModulesForAllRequests="true">
            <remove name="FormsAuthentication" />
            <remove name="RewriteModule" />
            <remove name="RoleManager" />
            <remove name="WebDAVModule" />
          </modules>
          <urlCompression doStaticCompression="true" />
          <httpCompression directory="%SystemDrive%\websites\_compressed" minFileSizeForComp="1024">
            <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" />
            <staticTypes>
              <add mimeType="text/*" enabled="true" />
              <add mimeType="message/*" enabled="true" />
              <add mimeType="application/javascript" enabled="true" />
              <add mimeType="application/json" enabled="true" />
              <add mimeType="*/*" enabled="false" />
            </staticTypes>
          </httpCompression>
          <httpProtocol>
            <customHeaders>
              <remove name="Server" />
              <remove name="X-Powered-By" />
              <remove name="X-AspNet-Version" />
            </customHeaders>
          </httpProtocol>
          <handlers>
            <remove name="OPTIONS" />
            <remove name="OPTIONSVerbHandler" />
            <remove name="TRACE" />
            <remove name="TRACEVerbHandler" />
            <remove name="WebDAV" />
            <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
            <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
          </handlers>
          <security>
            <requestFiltering allowDoubleEscaping="true">
              <requestLimits maxAllowedContentLength="10000000" />
            </requestFiltering>
          </security>
          <!--<rewrite><rules><clear /><rule name="Redirect HTTP to HTTPS"><match url="^(.*)$" /><conditions><add input="{HTTPS}" pattern="^OFF$" /><add input="{HTTP_HOST}" matchType="Pattern" pattern="\:9001$" negate="true" /><add input="{HTTP_HOST}" matchType="Pattern" pattern="^local-app.exceptionless.io$" negate="true" /></conditions><action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="SeeOther" /></rule><rule name="Redirect HTTPS to HTTP"><match url="^(.*)$" /><conditions><add input="{HTTPS}" pattern="^ON$" /><add input="{HTTP_HOST}" matchType="Pattern" pattern="^local-app.exceptionless.io$" /></conditions><action type="Redirect" url="http://{HTTP_HOST}/{R:1}" redirectType="SeeOther" /></rule><rule name="Redirect exceptionless.io to be.exceptionless.io"><match url="^(.*)$" /><conditions><add input="{HTTP_HOST}" matchType="Pattern" pattern="^exceptionless.io$" /></conditions><action type="Redirect" url="https://be.{HTTP_HOST}/{R:1}" redirectType="SeeOther" /></rule><rule name="PushState" stopProcessing="true"><match url=".*" /><conditions logicalGrouping="MatchAll"><add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /><add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /><add input="{REQUEST_FILENAME}" pattern=".*[^.]*\.[\d\w]+$" negate="true" /><add input="{REQUEST_URI}" matchType="Pattern" pattern="api/(.*)" negate="true" /></conditions><action type="Rewrite" url="/" /></rule></rules></rewrite>-->
        </system.webServer>
        <location path="error.html">
          <system.web>
            <httpModules>
              <clear />
            </httpModules>
          </system.web>
          <system.webServer>
            <modules>
              <clear />
            </modules>
          </system.webServer>
        </location>
        <location path="exceptionless.png">
          <system.web>
            <httpModules>
              <clear />
            </httpModules>
          </system.web>
          <system.webServer>
            <modules>
              <clear />
            </modules>
          </system.webServer>
        </location>
        <location path="favicon.ico">
          <system.web>
            <httpModules>
              <clear />
            </httpModules>
          </system.web>
          <system.webServer>
            <modules>
              <clear />
            </modules>
          </system.webServer>
        </location>
        <location path="index.html">
          <system.web>
            <httpModules>
              <clear />
            </httpModules>
          </system.web>
          <system.webServer>
            <modules>
              <clear />
            </modules>
          </system.webServer>
        </location>
        <runtime>
          <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
            <dependentAssembly>
              <assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" />
              <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
            </dependentAssembly>
            <dependentAssembly>
              <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
              <bindingRedirect oldVersion="0.0.0.0-10.0.0.0" newVersion="10.0.0.0" />
            </dependentAssembly>
            <dependentAssembly>
              <assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" culture="neutral" />
              <bindingRedirect oldVersion="0.0.0.0-3.1.0.0" newVersion="3.1.0.0" />
            </dependentAssembly>
            <dependentAssembly>
              <assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" />
              <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
            </dependentAssembly>
            <dependentAssembly>
              <assemblyIdentity name="Microsoft.Owin.Security" publicKeyToken="31bf3856ad364e35" culture="neutral" />
              <bindingRedirect oldVersion="0.0.0.0-3.1.0.0" newVersion="3.1.0.0" />
            </dependentAssembly>
            <dependentAssembly>
              <assemblyIdentity name="System.Web.Cors" publicKeyToken="31bf3856ad364e35" culture="neutral" />
              <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
            </dependentAssembly>
            <dependentAssembly>
              <assemblyIdentity name="Microsoft.AspNet.SignalR.Core" publicKeyToken="31bf3856ad364e35" culture="neutral" />
              <bindingRedirect oldVersion="0.0.0.0-2.2.0.0" newVersion="2.2.0.0" />
            </dependentAssembly>
            <dependentAssembly>
              <assemblyIdentity name="NLog" publicKeyToken="5120e14c03d0593c" culture="neutral" />
              <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
            </dependentAssembly>
            <dependentAssembly>
              <assemblyIdentity name="SimpleInjector" publicKeyToken="984cb50dea722e99" culture="neutral" />
              <bindingRedirect oldVersion="0.0.0.0-3.1.1.0" newVersion="3.1.1.0" />
            </dependentAssembly>
            <dependentAssembly>
              <assemblyIdentity name="Microsoft.Owin.FileSystems" publicKeyToken="31bf3856ad364e35" culture="neutral" />
              <bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0" />
            </dependentAssembly>
            <dependentAssembly>
              <assemblyIdentity name="Microsoft.Data.Edm" publicKeyToken="31bf3856ad364e35" culture="neutral" />
              <bindingRedirect oldVersion="0.0.0.0-5.6.4.0" newVersion="5.6.4.0" />
            </dependentAssembly>
            <dependentAssembly>
              <assemblyIdentity name="Microsoft.Data.Services.Client" publicKeyToken="31bf3856ad364e35" culture="neutral" />
              <bindingRedirect oldVersion="0.0.0.0-5.6.4.0" newVersion="5.6.4.0" />
            </dependentAssembly>
            <dependentAssembly>
              <assemblyIdentity name="Microsoft.Data.OData" publicKeyToken="31bf3856ad364e35" culture="neutral" />
              <bindingRedirect oldVersion="0.0.0.0-5.6.4.0" newVersion="5.6.4.0" />
            </dependentAssembly>
            <dependentAssembly>
              <assemblyIdentity name="SimpleInjector.Extensions.ExecutionContextScoping" publicKeyToken="984cb50dea722e99" culture="neutral" />
              <bindingRedirect oldVersion="0.0.0.0-3.1.1.0" newVersion="3.1.1.0" />
            </dependentAssembly>
            <dependentAssembly>
              <assemblyIdentity name="System.Collections.Immutable" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
              <bindingRedirect oldVersion="0.0.0.0-1.2.1.0" newVersion="1.2.1.0" />
            </dependentAssembly>
          </assemblyBinding>
        </runtime>
        <location path="index.html">
          <system.webServer>
            <staticContent>
              <clientCache cacheControlMode="DisableCache" />
            </staticContent>
          </system.webServer>
        </location>
      </configuration>

       

       

  4. Then start elasticsearch, redis. Exceptionless can then be deployed to iis.

  5. Open http: // localhost: 50000, register an account and sign in:
  6.  

Guess you like

Origin www.cnblogs.com/norain/p/10966021.html