• Forums
    • Public Forums
      • Community Connect
      • Dynatrace
        • Dynatrace Open Q&A
      • Application Monitoring & UEM
        • AppMon & UEM Open Q&A
      • Network Application Monitoring
        • NAM Open Q&A
  • Home /
  • Public Forums /
  • Application Monitoring & UEM /
  • AppMon & UEM Open Q&A /
avatar image
Question by Christopher A. · Mar 19, 2015 at 07:53 AM ·

Apache CGI instrumentation feedback?

Hello,

 

A customer has a CGI application running on Apache used as an intermediate layer between a javascript application and .Net back-ends. It gets web requests from the javascript application and makes web request calls to the .Net tiers.

As we are losing our correlation tagging when we go through this layer, we were thinking about instrumenting this application with an agent but we don't know how we should do:

  • the web server agent should allow us to capture the HTTP header containing the dynaTrace tag but would not allow us to capture the calls to the .Net tiers.
  • using the native ADK might give us more flexibility but the customer is afraid this might create too much overhead on the thread initialization for the web requests.

We were wondering if anyone instrumented a CGI application with dynaTrace and if they would be willing to share their feedback about it?

Thanks in advance!

 

Chris

Comment

People who like this

0 Show 0
10 |2000000 characters needed characters left characters exceeded
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Toggle Comment visibility. Current Visibility: Viewable by all users

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

8 Replies

  • Sort: 
  • Most voted
  • Newest
  • Oldest
avatar image

Answer by Christopher A. · Apr 08, 2015 at 04:50 AM

Thank you Christian for your reply: unfortunately, it looks like the intermediate layer written in C/C++ can potentially make multiple outgoing call for a single incoming web request so I don't think the 1st solution would work.

Option #2 would therefore be the only real option here but the customer is hesitant and would like to have to feedback on the overhead caused by the tool as, from my understanding, there is a new process spawned for each incoming web request and they're afraid that the dT agent initialization would take too long.

Comment

People who like this

0 Show 0 · Share
10 |2000000 characters needed characters left characters exceeded
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Toggle Comment visibility. Current Visibility: Viewable by all users

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

avatar image

Answer by Christian S. · Apr 08, 2015 at 03:50 AM

hi Christopher,

so my assumption about this CGI environment is as follows: the CGI scripts get specific (or all?) HTTP requests from the apache and creates new HTTP requests which call then into .NET. I assume for every incoming HTTP request into apache/CGI one outgoing to .NET.

so if that's the case I'm wondering if you really want to use the ADK for this, as I see (at least) two options here:

  1. you just take the "X-dynaTrace" header in the CGI script from the incoming HTTP request and set it on the outgoing one.
  2. you really use the Native ADK in CGI, have to read the "X-dynaTrace" HTTP header, set the dynatrace tag, start a purepath, send events, create a link (all via ADK) and again set the "X-dynaTrace" HTTP header

option #1 is of course a lot easier, does not require the ADK and would continue the PurePath, but would not show you insights about the CGI scripts.

option #2 would - with the help of the ADK - in addition give you insight into the CGI scripts.

so if you're not after this additional insight into the CGI scripts, option #1 would be way easier IMHO.
however, if the CGI scripts are doing more complicated stuff, then the use  of the ADK might be necessary, anyway.

HTH,
Christian 

Comment

People who like this

0 Show 0 · Share
10 |2000000 characters needed characters left characters exceeded
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Toggle Comment visibility. Current Visibility: Viewable by all users

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

avatar image

Answer by Andreas G. · Apr 06, 2015 at 09:31 AM

Eric: With extremely lightweight I mean that our API calls take the data our users capture and put them into a queue that gets send asynchronously to the dynatrace server. This is the same approach we use for our Java & .NET Agents. FOr Java & .NET we typically capture much more data than with the ADK as we have a lot of out-of-the-box sensors. As you know we never really have customers complain about the overhead for these technologies. As the ADK implementation typically captures less PurePath nodes the overhead of this is even lower than you would see in Java & .NET. I don't have any data on-hand right now but I will see if I can get anything from our engineering team on this

Christopher: I hope somebody else can chime in her. I am not aware of an actual implementation. Therefore I cant share any stories

Comment

People who like this

0 Show 0 · Share
10 |2000000 characters needed characters left characters exceeded
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Toggle Comment visibility. Current Visibility: Viewable by all users

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

avatar image

Answer by Christopher A. · Apr 01, 2015 at 08:46 PM

The customer would like to have more details, especially about how to instrument a CGI application and how other customer did it in the past.

Do we have examples we can communicate of other customers instrumenting their CGI application with dynaTrace?

Comment

People who like this

0 Show 0 · Share
10 |2000000 characters needed characters left characters exceeded
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Toggle Comment visibility. Current Visibility: Viewable by all users

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

avatar image

Answer by Eric G. · Mar 27, 2015 at 02:38 AM

Hi Andi -

Would you be able to expand on the comment "extremely lightweight":

  • What is the actual overhead that you are seeing in most cases? 
  • Do you have any data that you can share on this? 

Thank you!

Comment

People who like this

0 Show 0 · Share
10 |2000000 characters needed characters left characters exceeded
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Toggle Comment visibility. Current Visibility: Viewable by all users

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

avatar image

Answer by Christopher A. · Mar 26, 2015 at 04:10 AM

Thank you Andi for your reply. I will forward your response to the customer and I'll let you know if they have any further question or comment about this.

Comment

People who like this

0 Show 0 · Share
10 |2000000 characters needed characters left characters exceeded
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Toggle Comment visibility. Current Visibility: Viewable by all users

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

avatar image

Answer by Andreas G. · Mar 25, 2015 at 09:33 PM

Hi

I have not done this before. I dont share the fear of the Native ADK having too much overhead. We are using the Native ADK in many installations with heavy load - overhead is never an issue as it is extremly lightweight.

Andi

Comment

People who like this

0 Show 0 · Share
10 |2000000 characters needed characters left characters exceeded
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Toggle Comment visibility. Current Visibility: Viewable by all users

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

avatar image

Answer by Christopher A. · Mar 25, 2015 at 08:51 PM

andreas.grabner@dynatrace.com: Any idea on how we could instrument this?

Comment

People who like this

0 Show 0 · Share
10 |2000000 characters needed characters left characters exceeded
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Toggle Comment visibility. Current Visibility: Viewable by all users

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

How to get started

First steps in the forum
Read Community User Guide
Best practices of using forum

NAM 2019 SP5 is available


Check the RHEL support added in the latest NAM service pack.

Learn more

LIVE WEBINAR

"Performance Clinic - Monitoring as a Self Service with Dynatrace"


JANUARY 15, 3:00 PM GMT / 10:00 AM ET

Register here

Follow this Question

Answers Answers and Comments

3 People are following this question.

avatar image avatar image avatar image

Forum Tags

dotnet mobile monitoring load iis 6.5 kubernetes mainframe rest api dashboard framework 7.0 appmon 7 health monitoring adk log monitoring services auto-detection uem webserver test automation license web performance monitoring ios nam probe collector migration mq web services knowledge sharing reports window java hybris javascript appmon sensors good to know extensions search 6.3+ server documentation easytravel web dashboard kibana system profile purelytics docker splunk 6.1 process groups account 7.2 rest dynatrace saas spa guardian appmon administration production user actions postgresql upgrade oneagent measures security Dynatrace Managed transactionflow technologies diagnostics user session monitoring unique users continuous delivery sharing configuration alerting NGINX splitting business transaction client 6.3 installation database scheduler apache mobileapp RUM php dashlet azure purepath agent 7.1 appmonsaas messagebroker nodejs 6.2 android sensor performance warehouse
  • Forums
  • Public Forums
    • Community Connect
    • Dynatrace
      • Dynatrace Open Q&A
    • Application Monitoring & UEM
      • AppMon & UEM Open Q&A
    • Network Application Monitoring
      • NAM Open Q&A