Support Questions

Find answers, ask questions, and share your expertise

Cloudera Manager services Health History

avatar

I have a CDP On prem cluster on 719 parcels , I am interested to get the HDFS service status of last 7 days . I know one way is to get from CM UI But I am interested to get from DB and want to plot a graph once I have the status of last 7 days . Its not only for HDFS service but for all the services in the cluster, Can you give me table details and query to fetch that data ?

1 ACCEPTED SOLUTION

avatar
Contributor

Hello @Deepak_Unravel 

I highly recommend you to go through the links which I have given in my previous comment.  As mentioned above, timeseries data not stored in any of the backend database.  It uses LDB [leveldb] storage.

If you haven't tried the API Explorer feature in your environment, I request you to try out the same.  I have given below the example query which I have tried in my lab using API Explorer to get the HDFS Service Health status for the last 7 days.

Navigate to CM UI -> support -> API Explorer -> TimeSeriesResource -> GET /timeseries API call.

Example query:

Please note to replace the {cm_server_fqdn} & {cm_server_port}

curl -X GET "https://{cm_server_fqdn}:{cm_server_port}/api/v57/timeseries?contentType=application%2Fjson&desiredRollup=RAW&from=2025-03-04T09%3A45%3A00.000Z&mustUseDesiredRollup=false&query=select%20health_good_rate%20*%20100%20as%20%22good%20health%22%2C%20health_concerning_rate%20*%20100%20as%20%22concerning%20health%22%2C%20health_bad_rate%20*%20100%20as%20%22bad%20health%22%2C%20health_disabled_rate%20*%20100%20as%20%22disabled%20health%22%2C%20health_unknown_rate%20*%20100%20as%20%22unknown%20health%22%20where%20entityName%3D%22HDFS-1%22&to=now" -H "accept: application/json"

 

If you have any business requirement to create the custom query/chart you shall make use of the timeseries data.  For more details, kindly refer https://docs.cloudera.com/cdp-private-cloud-base/7.1.9/monitoring-and-diagnostics/topics/cm-charting... 

 

Also consider reach out to Cloudera Support.

View solution in original post

4 REPLIES 4

avatar
Contributor

Hello @Deepak_Unravel 

Thank you for reaching out Cloudera Community.

The tsquery language is used to specify statements for retrieving time-series data from the Cloudera Manager time-series datastore and it gets stored in Service Monitor leveldb not in any backend database.

For more details, please be kind to refer our product documentations.  Additionally for some extent, you can make use of the REST API calls under TimeSeriesResource section on CM UI -> Support -> "API Documentation" or "API Explorer"

https://docs.cloudera.com/cdp-private-cloud-base/7.1.9/monitoring-and-diagnostics/topics/cm-tsquery-...

https://docs.cloudera.com/cdp-private-cloud-base/7.1.9/monitoring-and-diagnostics/topics/cm-cluster-...

Hope this helps.

 

avatar

Thanks for the response but I dont see any smon DB ? I am using embeeded DB .

scm=> \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
--------------------+--------------------+----------+------------+------------+-----------------------------------
amon | amon | UTF8 | en_US.UTF8 | en_US.UTF8 |
configstore | sa | UTF8 | en_US.UTF8 | en_US.UTF8 |
hive | hive | UTF8 | en_US.UTF8 | en_US.UTF8 |
nav | nav | UTF8 | en_US.UTF8 | en_US.UTF8 |
navms | navms | UTF8 | en_US.UTF8 | en_US.UTF8 |
oozie_oozie_server | oozie_oozie_server | UTF8 | en_US.UTF8 | en_US.UTF8 |
postgres | cloudera-scm | UTF8 | en_US.UTF8 | en_US.UTF8 |
ranger | ranger | UTF8 | en_US.UTF8 | en_US.UTF8 |
rman | rman | UTF8 | en_US.UTF8 | en_US.UTF8 |
scm | scm | UTF8 | en_US.UTF8 | en_US.UTF8 |
template0 | cloudera-scm | UTF8 | en_US.UTF8 | en_US.UTF8 | =c/"cloudera-scm" +
| | | | | "cloudera-scm"=CTc/"cloudera-scm"
template1 | cloudera-scm | UTF8 | en_US.UTF8 | en_US.UTF8 | =c/"cloudera-scm" +
| | | | | "cloudera-scm"=CTc/"cloudera-scm"
(12 rows)

avatar

Can you pls give me exact DB and table name and query  from where I can get HDFS service status of last 7 days ?

avatar
Contributor

Hello @Deepak_Unravel 

I highly recommend you to go through the links which I have given in my previous comment.  As mentioned above, timeseries data not stored in any of the backend database.  It uses LDB [leveldb] storage.

If you haven't tried the API Explorer feature in your environment, I request you to try out the same.  I have given below the example query which I have tried in my lab using API Explorer to get the HDFS Service Health status for the last 7 days.

Navigate to CM UI -> support -> API Explorer -> TimeSeriesResource -> GET /timeseries API call.

Example query:

Please note to replace the {cm_server_fqdn} & {cm_server_port}

curl -X GET "https://{cm_server_fqdn}:{cm_server_port}/api/v57/timeseries?contentType=application%2Fjson&desiredRollup=RAW&from=2025-03-04T09%3A45%3A00.000Z&mustUseDesiredRollup=false&query=select%20health_good_rate%20*%20100%20as%20%22good%20health%22%2C%20health_concerning_rate%20*%20100%20as%20%22concerning%20health%22%2C%20health_bad_rate%20*%20100%20as%20%22bad%20health%22%2C%20health_disabled_rate%20*%20100%20as%20%22disabled%20health%22%2C%20health_unknown_rate%20*%20100%20as%20%22unknown%20health%22%20where%20entityName%3D%22HDFS-1%22&to=now" -H "accept: application/json"

 

If you have any business requirement to create the custom query/chart you shall make use of the timeseries data.  For more details, kindly refer https://docs.cloudera.com/cdp-private-cloud-base/7.1.9/monitoring-and-diagnostics/topics/cm-charting... 

 

Also consider reach out to Cloudera Support.