Published

Application Insights Aras Plugin

The Microsoft Application Insights Aras Plugin is a tool that allows administrators of an Aras instance to instrument and monitor Methods run inside Aras.

Once installed, all Aras Methods will log a detailed waterfall graph of their execution time into Application Insights.

Other contributors:



Project URL:


https://github.com/adrho/ApplicationInsights.ArasPlugin

Parents
  • Hi Adam,

    I was attempting to test this project so we can publish it, but I ran into some issues attempting to use the project. I was able to follow along with the README through the innovator side of the installation, but then became lost. As someone who's never used insights I wasn't sure where to go from there. I attempted to build the C# solution but ran into some errors. Could you please update the README with a few more steps? I really think this project is very valuable and I'd like as many people as possible to get their hands on it!

    Thanks,

    AJ

  • Thanks for your feedback. I've updated the instructions with some example Methods to add inside of Aras, and how to view that information inside of Application Insights.

    If you are still having problems with building the solution, what are they? Can you confirm what version of Visual Studio you are using?

  • I was able to successfully build the solution this morning. For the record I was using visual studio 2017. I should've written down the error I received last week but I forgot. 

    I'm now running into an issue where the method.config provided causes issues. I've attempted just copying/pasting, and also manually making the adjustments. Both times my instance hangs directly after the login screen. I think the modifications to the C# template might not work across all versions of innovator. What version of Innovator did you build this against? I'm testing locally on SP4.

  • I'm working with V12 SP2. If you send your method-config.xml I can take a look at it. If you try to login via another application, such as Batch Loader or Nash, do you get any errors or does it work? What are the errors if you get any? Maybe the built DLL references a different version of IOM or similar and would need an assembly redirection.

  • I am able to log in via nash without issue. The error seems to be isolated solely to the modification of the methoc-config.xml. If i remove the changes I've made to that file I'm able to log in successfully. When I add the changes back in and log in through the client, the login screen disappears and I'm presented with a blank screen which hangs forever. I'm assuming the modifications to the C# template are causing a server side method that is fired off after login to fail, but can't seem to trace it. 

    It's very strange, When I insert the default method-config, there are no issues. I attempted diffing the two files and the only changes are the changes specified in the readme. I've even compared my default SP4 to your example method-config, and the changes are the exact same. 

    Here's a link to the modified method-config https://gist.github.com/asebastian-aras/f74241fcaf3bf59228bc15406119cd92

Comment
  • I am able to log in via nash without issue. The error seems to be isolated solely to the modification of the methoc-config.xml. If i remove the changes I've made to that file I'm able to log in successfully. When I add the changes back in and log in through the client, the login screen disappears and I'm presented with a blank screen which hangs forever. I'm assuming the modifications to the C# template are causing a server side method that is fired off after login to fail, but can't seem to trace it. 

    It's very strange, When I insert the default method-config, there are no issues. I attempted diffing the two files and the only changes are the changes specified in the readme. I've even compared my default SP4 to your example method-config, and the changes are the exact same. 

    Here's a link to the modified method-config https://gist.github.com/asebastian-aras/f74241fcaf3bf59228bc15406119cd92

Children
  • Hey AJ - I was able to resolve the problem by using an assembly redirection. Looks like in V12 SP4, Aras Innovator already uses an ApplicationInsights.dll, v2.10.0. This conflicts with the version 2.3.0 included in this project. When attempting to upgrade from 2.3.0 -> 2.10.0 in this plugin project, there's a level deeper version mismatch on System.Diagnostics.DiagnosticSource.dll which I was not able to resolve. This is actually why I used version as 2.3.0 in the first place, because 2.3.0 does not have any reference to this DLL at all.

    You can resolve this by making the references to 2.10.0 point to 2.3.0 by editing the Innovator/Server/web.config file, and adding the following redirection (you can add it in with the other redirections)

    <configuration>
      <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
          <dependentAssembly>
            <assemblyIdentity name="Microsoft.ApplicationInsights" publicKeyToken="31bf3856ad364e35" culture="neutral" />
            <bindingRedirect oldVersion="0.0.0.0-2.10.0.0" newVersion="2.3.0.0" />
          </dependentAssembly>
        </assemblyBinding>
      </runtime>
    </configuration>

    Please try and let me know if this works for you.

  • That worked! Could you include this step in the Readme? Just as a disclaimer that it's a necessary step for some service packs. 

    I think there could also be some value in adding either a quick guide to setting up application insights, or a link to a resource about that. It's not very hard to set up, but it would probably be useful for people who have never used the product before. 

    Other than that the project is awesome. These kinds of metrics could be incredibly valuable. Thanks for your contribution! Would you be okay with us promoting this project on our Aras Labs social channels? 

  • Sure, I've updated the instructions and added that you may need to have the assembly redirect, and I've linked to a few pages on setting up a new instance of App Insights.

    Feel free to promote it however you would like.