cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

This product reached the end of support date on March 31, 2021.

Can dynatrace be used to trace the shell scripts using custom API?

tarun_mehta
Newcomer

We are trying to setup Dynatrace on some shell scripts to monitor their activity. Can we monitor its activity via Dynatrace?

If yes, what's the procedure to set that up?

7 REPLIES 7

david_n
Inactive

Hello Tarun,

Here is a really cool video about how Dynatrace captures data for non-web bases applications. The section you care about it only 10 minutes of the video and I grabbed it at the point where you should start.
Basically, you need to find the method that the script references that begins the whole chain of events. If you set an entry point sensor on that, DT should be able to capture what is being done by your script.

https://youtu.be/PKYC8L_EoXQ?t=218

Thanks,

David Nicholls

Thanks David.

However, shouldn't that custom sensor must be a class that is executed
on the java jvm? Which is done by editing the method in the sensor, and there is an
option to ‘start purepaths’ with the method.

We are trying to instrument a unix shell script, which I think would not work. As it seems to only work for a method that
runs within a java jvm.

As per the video, they seem to be java based entry points.

Hi Tarun,

You are correct in that assessment. I was considering a batch script situation for your case. I am not sure that DT can monitor the UNIX shell scripts. Could you give a more in depth explanation of the script you are trying to monitor?

Thanks,

David Nicholls

startmaxl.txt build-cube.txt setessbaseenv.txt

Sure David. We are trying to see API activity an Essbase shell script on Dyntrace, that builds an Essbase cube via command below.

./build_cube.sh -A CPMIS cpmis.var &

The build_cube.sh script is attached. I checked through the script and there are no class patterns, as mentioned in the video, in it. However this script calls 'Essmsh'(Maxl) which is Java based. Its attached too. Although I doubt that adding a custom sensor would help.

This build_cube.sh also calls another shell script set_env.sh

(setessbaseenv.txt)

Which is java based and we did place the Dynatrace agent path parameter in ESS_CSS_JVM_OPTION to configure Dynatrace.

I am not sure if adding some Dynatrace option here would help.

I don't expect you to understand this explanation as each application is different but since you asked so here it is.

david_n
Inactive

Hi Tarun,

When you check the class cache for the agents that monitor these hosts do you see any of the Essbase classes? I would go into the system profile, select sensors, add a new sensor group, then browse to see what appears when you search for "ess". This is the easiest way to see if the agent picks up on those shell script calls. If not, then I don't think that they agent goes that deep into the Unix calls. It would easy to see how quickly that level of data could overwhelm the average user.

Thanks,

David Nicholls

Hi David, It seems like that it does pick up the method 'com.hyperion.essbase.calculator.Launcher' in Essbase. As shown in the picture. I have activated it and started pure paths.

On the basis of below reference document, I have added another class 'com.hyperion.essbase.calculator.CalcBoolean' and started its purepath to see if they get detected when we run the cube build.

Reference:https://docs.oracle.com/cd/E40248_01/epm.1112/esb_javadoc/com/hyperion/essbase/calculat/calcbool.htm

Awesome, I am glad that you found some methods related to Essbase. Let me know if it tracks the information that you were interested in.

Thanks,

David Nicholls