diff --git a/ozgcloud-elasticsearch-operator/src/main/java/de/ozgcloud/operator/ElasticsearchReconciler.java b/ozgcloud-elasticsearch-operator/src/main/java/de/ozgcloud/operator/ElasticsearchReconciler.java index 6ef43e5506d87d6b709d02d98b3b047f196c25b3..d9d42a1268a60a7e2008ba8c28f92ef75a42d6d1 100644 --- a/ozgcloud-elasticsearch-operator/src/main/java/de/ozgcloud/operator/ElasticsearchReconciler.java +++ b/ozgcloud-elasticsearch-operator/src/main/java/de/ozgcloud/operator/ElasticsearchReconciler.java @@ -1,7 +1,6 @@ package de.ozgcloud.operator; import java.util.Base64; -import java.util.logging.Level; import org.apache.commons.collections.MapUtils; import org.springframework.stereotype.Component; @@ -14,9 +13,9 @@ import io.javaoperatorsdk.operator.api.reconciler.DeleteControl; import io.javaoperatorsdk.operator.api.reconciler.Reconciler; import io.javaoperatorsdk.operator.api.reconciler.UpdateControl; import lombok.RequiredArgsConstructor; -import lombok.extern.java.Log; +import lombok.extern.log4j.Log4j2; -@Log +@Log4j2 @RequiredArgsConstructor @ControllerConfiguration @Component @@ -28,25 +27,22 @@ public class ElasticsearchReconciler implements Reconciler<OzgCloudElasticsearch public UpdateControl<OzgCloudElasticsearchCustomResource> reconcile(OzgCloudElasticsearchCustomResource resource, Context<OzgCloudElasticsearchCustomResource> context) { try { - log.log(Level.INFO, "Reconcile user {0} ", resource.getCRDName()); + LOG.info("{0}: Reconcile user", resource.getCRDName()); var namespace = resource.getMetadata().getNamespace(); var secret = service.getOrCreateCredentialSecret(resource, context); service.createIndexIfMissing(namespace); service.createSecurityRoleIfMissing(namespace); service.createSecurityUserIfMissing(namespace, getPassword(secret)); service.createCertificateIfMissing(namespace); - log.log(Level.INFO, "Reconcile user {0} successful.", resource.getCRDName()); + LOG.info("{0}: Reconcile user successful.", resource.getCRDName()); return OzgCloudElasticsearchUpdateControlBuilder.fromResource(resource).withStatus(CustomResourceStatus.OK).build(); } catch (Exception exception) { - log.log(Level.WARNING, "Reconcile user " + resource.getCRDName() + " failed.", exception); + LOG.warn(resource.getCRDName() + ": Reconcile user failed.", exception); return buildExceptionUpdateControl(resource, exception); } } String getPassword(Secret secret) { - log.info("get password for elastic user..."); - log.info(String.format("from secret string map: %s", secret.getStringData())); - log.info(String.format("from secret data map: %s", secret.getData())); return decode(MapUtils.getString(secret.getData(), OzgCloudElasticsearchSecretHelper.CREDENTIAL_SECRET_PASSWORD_FIELD)); } @@ -77,7 +73,7 @@ public class ElasticsearchReconciler implements Reconciler<OzgCloudElasticsearch service.deleteIndexIfExists(namespace); return DeleteControl.defaultDelete(); } catch (Exception e) { - log.log(Level.INFO, String.format("Could not cleanup elasticsearch resource in namespace %s. %n %s", namespace, e)); + LOG.warn(resource.getCRDName() + ": Could not cleanup elasticsearch resource.", e); return DeleteControl.defaultDelete(); } } diff --git a/ozgcloud-elasticsearch-operator/src/main/java/de/ozgcloud/operator/OzgCloudElasticsearchService.java b/ozgcloud-elasticsearch-operator/src/main/java/de/ozgcloud/operator/OzgCloudElasticsearchService.java index 6bd2873dbf0dd294d5b2c8723062312f708131c9..cc0a532ada6ad93ce775049769deb823715071ce 100644 --- a/ozgcloud-elasticsearch-operator/src/main/java/de/ozgcloud/operator/OzgCloudElasticsearchService.java +++ b/ozgcloud-elasticsearch-operator/src/main/java/de/ozgcloud/operator/OzgCloudElasticsearchService.java @@ -1,7 +1,6 @@ package de.ozgcloud.operator; import java.util.Objects; -import java.util.logging.Level; import org.apache.commons.collections.MapUtils; import org.springframework.stereotype.Component; @@ -14,9 +13,9 @@ import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.extension.ResourceAdapter; import io.javaoperatorsdk.operator.api.reconciler.Context; import lombok.RequiredArgsConstructor; -import lombok.extern.java.Log; +import lombok.extern.log4j.Log4j2; -@Log +@Log4j2 @RequiredArgsConstructor @Component public class OzgCloudElasticsearchService { @@ -30,19 +29,18 @@ public class OzgCloudElasticsearchService { public Secret getOrCreateCredentialSecret(OzgCloudElasticsearchCustomResource resource, Context<OzgCloudElasticsearchCustomResource> context) { try { - log.log(Level.INFO, "{0}: Get or create secret.", resource.getCRDName()); + LOG.debug("{0}: Get or create secret.", resource.getCRDName()); var namespace = resource.getMetadata().getNamespace(); var secretResource = getCredentialsSecretResource(namespace); if (Objects.isNull(secretResource.get())) { - log.log(Level.INFO, "{0}: Secret not exists, create one ...", resource.getCRDName()); + LOG.info("{0}: Secret not exists, create one ...", resource.getCRDName()); createCredentialSecret(secretResource, namespace); - log.info("Secret creation successful."); + LOG.info("{0}: Secret creation successful.", resource.getCRDName()); } - log.info("secret..."); return secretResource.get(); } catch (Exception e) { - log.info("Secret creation failed: " + e); + LOG.warn(resource.getCRDName() + ": Secret creation failed: ", e); throw e; } } @@ -56,19 +54,17 @@ public class OzgCloudElasticsearchService { } public void createIndexIfMissing(String name) throws Exception { - log.info("Check index..."); + LOG.debug("{0}: Check elasticsearch index...", name); if (!remoteService.existsIndex(name)) { remoteService.createIndex(name); } - log.info("Check index successful."); } public void createSecurityRoleIfMissing(String roleName) throws Exception { - log.info("Check security role..."); + LOG.debug("{0}: Check elasticsearch role...", roleName); if (!remoteService.existsSecurityRole(roleName)) { remoteService.createSecurityRole(buildPutRoleRequestData(roleName)); } - log.info("Check security role successful."); } PutRoleRequestData buildPutRoleRequestData(String roleName) { @@ -80,11 +76,10 @@ public class OzgCloudElasticsearchService { } public void createSecurityUserIfMissing(String namespace, String password) throws Exception { - log.info("Check security user..."); + LOG.debug("{0}: Check elasticsearch user...", namespace); if (!remoteService.existsSecurityUser(namespace)) { remoteService.createSecurityUser(buildPutUserRequestData(namespace, password)); } - log.info("Check security user successful."); } PutUserRequestData buildPutUserRequestData(String namespace, String password) { @@ -92,42 +87,37 @@ public class OzgCloudElasticsearchService { } public void deleteSecurityUserIfExists(String userName) throws Exception { - log.info("Delete security user..."); + LOG.debug("{0}: Check delete elasticsearch user...", userName); if (remoteService.existsSecurityUser(userName)) { remoteService.deleteSecurityUser(userName); } - log.info("Delete security user successful."); } public void deleteSecurityRoleIfExists(String roleName) throws Exception { - log.info("Delete security role..."); + LOG.debug("{0}: Check delete elasticsearch role...", roleName); if (remoteService.existsSecurityRole(roleName)) { remoteService.deleteSecurityRole(roleName); } - log.info("Delete security role successful."); } public void deleteIndexIfExists(String indexName) throws Exception { - log.info("Delete index role..."); + LOG.debug("{0}: Check delete elasticsearch index ...", indexName); if (remoteService.existsIndex(indexName)) { remoteService.deleteIndex(indexName); } - log.info("Delete index role successful."); } public void createCertificateIfMissing(String namespace) { try { - log.info("Create certificate secret if missing..."); + LOG.debug("{0}: Create certificate secret if missing...", namespace); var secretResource = kubernetesService.getSecretResource(namespace, properties.getCertificateSecretName()); if (Objects.isNull(secretResource.get())) { - log.info("create..."); + LOG.info("{0}: Create certificate secret", namespace); createCredentialSecret(namespace, secretResource); - log.info("create successful."); } } catch (Exception e) { - log.log(Level.SEVERE, "Certificate secret creation failed: " + e); - throw e; + throw new RuntimeException("Certificate secret creation failed " + namespace); } }