the version is 2013 SP1.
How can I instrument custom code?
How identify the transactions since everything is served by the same URL?
All I see on the console, are the modules as backends (just the SQL) and the main services offered by the CRM.
I really appreciate any advice in how to achieve this and I will generate a whole manual with all the info.
thanks a lot
The process for instrumenting an application is the same, regardless of it being Java or .NET.
You will first need to understand how to application works and what are the critical paths in the application code.
You'll need to start having conversations with your development team to get that understanding.
Then speak with your business analysts about the critical transactions in the application code.
Once you've done the requirements gathering, you'll need to get copies of the application assemblies and use a tool like ILDASM or dotPeek to inspect the assemblies.
Next, you'll need to create a ProbeBuilder Directive (PBD) that instruments the custom classes and methods with your application code. We have a list of best practices and guidance on building PBDs over on APM DEV (http://bit.ly/caapm_dev).
You will next need to add the PBD to your list of directives by 1) adding it to the hotdeploy folder, 2) adding it to the agent profile's directiveFiles property, or 3) add it to an existing ProbeBuilder List (PBL).
To begin testing you'll will need to do an 'iisreset' to restart the managed application.
If you have any further questions about ProbeBuilding, please join us over on APM DEV and ask your questions there. We've setup this subcommunity specifically to help you to extend the capabilities of APM.
Thanks for your advice and it is what I always do in any other project. the particular case for this CRM from MS is how it works:
- the CRM core is more like a framework, so when any new business logic is developed or any change/add to any form is encapsulated.
- all the developed code (C#) is uploaded/imported to the CRM and in some way is consumed by the form / app / module when neeeded
- Any new form or transaction is served by the same app and using the same URL
I already had a talk with the developer team... but they just know how to develop forms and business logic as I stated in my lines above... even when they have to debug, they are forced to generate flags (writing to a log file) until they get the expected results.
So.. if this requires a way to develop a new functionality at Wily.. what would be the steps to start doing it?
I would really appreciate your help with this matter.
thanks a lot,
I'll take a look and report back.