Create a Post
cancel
Showing results for 
Search instead for 
Did you mean: 
Petr_Hantak
Advisor
Advisor

Workaround - How to list all user-created application sites objects in short time

I would like to share with you small tip how to list all custom application-sites objects via API in reasonable time.

 

Why I need it?

I personally need to list all custom application site objects for internal auditing purpose. Right now there is no direct call how to list it. You can make listing simply by call "show-application-sites" and filter result by user-defined parameter, category or tag

In that case every simple call could take a long time. There is more than 8K generic application objects in database by default and I noticed such call take me approximatelly 2 minutes. If you need to take it from 30 diferent domains for example, then it could be really time consuming. Administrators don't have thousands of those objects so I don't see reason to load whole big data batch and then just drop 95% of it.

I decided to use workaround in my code to and time went down from minutes to seconds.

 

Solution

I'm using call "show-generic-objects" to get custom sites uids (this is not a standard call so I want to take a minimum only to avoid any unexpected result). Then I'm reading each custom site by "show-application-site"

 

 

mgmt_cli show-generic-objects class-name "com.checkpoint.objects.appfw.dummy.CpmiUserApplication" details-level uid --format json
mgmt_cli show-application-site uid "6175850c-9ad5-4f1b-b7d8-e551b4d0f0c2" details-level standard --format json

 

 

 

Remember to use offset and limit to list all related objects in first call.

 

It would be nice if we have one day a simple parameter in API to make the same work or related filter in show-objects call.

0 Kudos
2 Replies
PhoneBoy
Admin
Admin

If you add JQ to the mix you can filter based on who created it (which is one of the fields).
Included ones will be created by System (or similar).
But like you said: it’s a lot of calls just to drop most of the results.

Petr_Hantak
Advisor
Advisor

You are right of course and I agree it is probably best solution for simple call. My way is suitable for repeating calls when we want to minimize performance impact to API/database and get result in reasonable time.

0 Kudos

Leaderboard

Epsum factorial non deposit quid pro quo hic escorol.

Upcoming Events

    CheckMates Events