----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/74405/#review225403 -----------------------------------------------------------
agents-common/src/main/java/org/apache/ranger/plugin/model/RangerHealth.java Lines 40 (patched) <https://reviews.apache.org/r/74405/#comment314032> Consider renaming RangerHealth => RangerServerHealth agents-common/src/main/java/org/apache/ranger/plugin/model/RangerHealth.java Lines 91 (patched) <https://reviews.apache.org/r/74405/#comment314034> I suggest to avoid following static methods here, which duplicate methods in Builder. - unknown() - up() - down() - status() Callers can replace above methods with: - new Builder().unknown() - new Builder().up() - new Builder().down() - new Builder(status) agents-common/src/main/java/org/apache/ranger/plugin/model/RangerStatus.java Lines 39 (patched) <https://reviews.apache.org/r/74405/#comment314031> Consider replacing RangerStatus class with following enum in RangerHealth: public enum RangerServerStatus { UNKNOWN, INITIALIZING, INITIALIZATION_FAILURE, UP, DOWN } security-admin/src/main/java/org/apache/ranger/biz/RangerBizUtil.java Lines 1257 (patched) <https://reviews.apache.org/r/74405/#comment314033> Consider renaming getDBQuery() => getDBVersionQuery() security-admin/src/main/java/org/apache/ranger/common/db/BaseDao.java Line 363 (original), 363 (patched) <https://reviews.apache.org/r/74405/#comment314035> all if blocks in #363 to #373 have the same contents. Consider rewritting this as: switch (dbFlavor) { case AppConstants.DB_FLAVOR_MYSQL: case AppConstants.DB_FLAVOR_ORACLE: case AppConstants.DB_FLAVOR_POSTGRES: case AppConstants.DB_FLAVOR_SQLSERVER: case AppConstants.DB_FLAVOR_SQLANYWHERE: dbVersion = (String) getEntityManager().createNativeQuery(query).getSingleResult(); break; default: dbVersion = "Not Available"; } security-admin/src/main/java/org/apache/ranger/rest/PublicAPIsv2.java Lines 908 (patched) <https://reviews.apache.org/r/74405/#comment314036> Consider moving the details to populate RangerHealth into a separate class, similar to MetricUtil. Also move the constants defined above to that class. - Madhan Neethiraj On April 20, 2023, 11:03 a.m., Ramachandran Krishnan wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/74405/ > ----------------------------------------------------------- > > (Updated April 20, 2023, 11:03 a.m.) > > > Review request for ranger, Don Bosco Durai, Abhay Kulkarni, Madhan Neethiraj, > Mehul Parikh, Nikhil P, Pradeep Agrawal, Ramesh Mani, Selvamohan Neethiraj, > Sailaja Polavarapu, Subhrat Chaudhary, and Velmurugan Periasamy. > > > Bugs: RANGER-4195 > https://issues.apache.org/jira/browse/RANGER-4195 > > > Repository: ranger > > > Description > ------- > > Exposing the Ranger REST API is used to fetch the health check status of > Ranger Admin > > RangerAdmin Health Check JSON Response look like (In the current > implementation) > { > "status": "UP", > "components": { > "db": { > "status": "UP", > "details": > > { "database": "Oracle 21.3c", "validationQuery": "SELECT banner from > v$version where rownum<2" } > } > } > } > In the future we can extend this health check API for other components like > AuditHandler (Elastic search, Kafka,HDFS, Solr),KMS ,etc > Another Example : > { > "status": "UP", > "components": { > "db": { > "status": "UP", > "details": > > { "database": "Oracle 21.3c", "validationQuery": "SELECT banner from > v$version where rownum<2" } > }, > "auditProvider": { > "status": "UP", > "details": > > { "provider": "Elastic Search", "providerHealthCheckEndpoint": > "http://localhost:9200/_cluster/health?pretty" } > } > } > } > > > As part of this PR ,we have added some refactoring stuffs as well. > > > Diffs > ----- > > > agents-audit/src/main/java/org/apache/ranger/audit/provider/AuditProviderFactory.java > 598659bf4 > > agents-common/src/main/java/org/apache/ranger/plugin/model/RangerHealth.java > PRE-CREATION > > agents-common/src/main/java/org/apache/ranger/plugin/model/RangerStatus.java > PRE-CREATION > > agents-common/src/test/java/org/apache/ranger/plugin/model/TestRangerHealth.java > PRE-CREATION > security-admin/src/main/java/org/apache/ranger/biz/RangerBizUtil.java > 155fa357d > security-admin/src/main/java/org/apache/ranger/biz/ServiceDBStore.java > e52a92e04 > security-admin/src/main/java/org/apache/ranger/common/db/BaseDao.java > 0d0697990 > > security-admin/src/main/java/org/apache/ranger/patch/cliutil/MetricUtil.java > 7d4828ed0 > security-admin/src/main/java/org/apache/ranger/rest/PublicAPIsv2.java > 85cd7dd67 > security-admin/src/main/resources/conf.dist/security-applicationContext.xml > 807791f28 > security-admin/src/test/java/org/apache/ranger/biz/TestRangerBizUtil.java > 22e290a66 > security-admin/src/test/java/org/apache/ranger/rest/TestPublicAPIsv2.java > 73a593e9f > > > Diff: https://reviews.apache.org/r/74405/diff/1/ > > > Testing > ------- > > > Thanks, > > Ramachandran Krishnan > >
