• 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 Wei D. · Nov 06, 2014 at 03:47 AM ·

Java Method Argument Size

Hi All,

I have a customer who want to monitor their revenue trend with dynaTrace, but the only way I can find the revenue value is inside a big java method argument, the argument is a complex java type, with a toString() method to return the XML representation of the object. My question is that:  if I am going to monitor this argument with custom sensor, will dynaTrace return the full XML string or just part of it, is there any restriction on the size of method argument (String) that can be retrieved by dynaTrace?

Any comment is highly appreciated!

Thanks a lot!

Wei

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.

4 Replies

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

Answer by Wei D. · Jan 04, 2015 at 03:38 PM

Hi Reinhard,

Thanks for your advice.

I've tried to search for other option, like a java method with revenue as argument, but couldn't find one in the monitored agents. Right now, not only the revenue value but also other information, like bank id, need to be extracted from the big xml, so I have to use this way for now.

As for the numerical transformations for formatted strings, do you think we can have a dynaTrace patch to parse string in the form of scientific notation into numeric value, like an enhancement?

Any comment is highly appreciated!

Thanks a lot!

Wei


Comment

People who like this

0 Show 1 · 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 Reinhard W. · Jan 05, 2015 at 07:44 PM 0
Share

Wei,

we have had one (warning) request in the past to parse arbitarty number format strings back to numbers. This request wasn't implemented du to the low usage nad high effort associated with it. Sorry, very unlikely to get that anytime soon. I think the best way to get to your data easily is option (c) as Andy described it above.

Reinhard

avatar image

Answer by Wei D. · Dec 09, 2014 at 09:24 PM

Hi All,

I've change the string size captured to 12000, and the big argument can be captured.

Yet, with the argument in hand, there is another issue raised up. I am trying to extract certain number value from the big argument, but some time, this number value is in the form of scientific notation, for instance, 2.4e7. can dynaTrace recognize such number value, can dynaTrace transform such string into numeric?

Any comment is highly appreciated!

Thanks a lot!

Wei

Comment

People who like this

0 Show 1 · 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 Reinhard W. · Dec 09, 2014 at 09:44 PM 0
Share

Wei,

12k characters is very likely too big. I highly advise to go for the other options as you will probably run into an performance impact on the dynatrace server with a 12k attachment! Also parsing the whole XML via a regex to get the numeric value is not lightweight at all. Another reason to get the revenue value somewhere else.

I'm pretty sure a deeper investigation of the code will reveal some other possibility to extract the revenue value. Seems very unlogic to me to have it only in an XML that is passed along...

dynatrace does not provide any means of numerical transformations for formatted strings.

Reinhard

avatar image

Answer by Wei D. · Nov 10, 2014 at 03:53 AM

Hi Andi,

Thanks for your feedback.

I will try it with the first option and change the setting to a value that can capture the full size of the argument.

-Wei

Comment

People who like this

0 Show 1 · 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 Andreas G. ♦ · Nov 10, 2014 at 05:53 AM 0
Share

Keep us posted if this works for you

avatar image

Answer by Andreas G. · Nov 06, 2014 at 04:43 AM

Hi. There is a maximum string length capturing setting in your system profile. Check out your Agent Group/Tier and then click to Sensor Configuration. There you find that setting which defaults to 250.

Now - I think you have three options

a) capture the full String and then use a Measure Argument Measure with a RegEx to parse that revenue and use it in a BT

b) Instead of capturing the method argument as a full XML.toString() you can use the new "accessor" feature introduced in dt6 which allows you to call a method on that argument instead of just calling toString(). So - in case there is a simply get method that you can call on that method argument that would return the revenue you could do that. The limitatio here is that these accessors right now only allow you to call simple methods without parameters.

c) talk with your developers and let them call a "dummy" method where they pass the revenue as a method argumet. Define a custom sensor for that method to capture that value.

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.

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

1 Person is following this question.

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