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

sum,count etc. are missing in the AppDynamics Python API client.get_metric method output

ayan.dutta2
Producer

 

Hi ,
When I am invoking a REST URI from the browser using an URL like the following
http://<IP>:<PORT>/controller/rest/applications/4/metric-data?metric-path=Overall%20Application%20Performance%7CNumber%20of%20Very%20Slow%20Calls&time-range-type=BEFORE_NOW&duration-in-mins=60&rollup=true
I am getting the output like the following

<metric-datas>
<metric-data>
<metricId>4226</metricId>
<metricPath>
Overall Application Performance|Number of Very Slow Calls
</metricPath>
<metricName>BTM|Application Summary|Number of Very Slow Calls</metricName>
<frequency>ONE_MIN</frequency>
<metricValues>
<metric-value>
<startTimeInMillis>1498138740000</startTimeInMillis>
<value>7</value>
<min>0</min>
<max>0</max>
<current>0</current>
<sum>7</sum>
<count>17</count>
<standardDeviation>0.0</standardDeviation>
<occurrences>0</occurrences>
<useRange>false</useRange>
</metric-value>
</metricValues>
</metric-data>
</metric-datas>
 
But when I am making the call using appdynamics python API using the following code 
 
 
from appd.request import AppDynamicsClient
client = AppDynamicsClient("<URL>", "<USERID>", "<PASSWD>")
metrics = client.get_metrics('Overall Application Performance|Number of Very Slow Calls',4,'BEFORE_NOW',60,True)
print 'metrics details ',metrics.__dict__
 
I am getting response like the following
 
metrics details  {'data': [<MetricDataSingle: _frequency=u'ONE_MIN', values=[<MetricValue: current=0, max=0, start_time_ms=1498139220000L, value=12, min=0>], path=u'Overall Application Performance|Number of Very Slow Calls'>]}
 
Here attributes like sum,count,standardDeviation,occurrences etc are missing in the python API output .
I am new to python ,so may miss something here .
Please let me know if anybody has any idea on this .
 
 
2 REPLIES 2

Arun.Dasetty
AppDynamics Team

Hi,

Unfortunately i could not locate any internal docs or options for this get specific details, we suggest to use rest api for missing details



Found something helpful? Click the Accept as Solution button to help others find answers faster.
Liked something? Click the Thumbs Up button.

Hi ,
I am trying to do the same but one strange thing noticed there .
If I write a sample code using the python client 

 

from appd.request import AppDynamicsClient
c = AppDynamicsClient('URL','group','appd@123')
for app in c.get_applications():
print app.id, app.name

It works fine .

 

But if I do a simple call like the following 

 

 

import requests
usr =<uid>
pwd =<pwd>
url ='http://10.201.51.40:8090/controller/rest/applications?output=JSON'
response = requests.get(url,auth=(usr,pwd))
print 'response',response

I get the following response 

 

response <Response [401]>

Am I doing anything wrong here ?