Troubleshooting steps

  1. Microservice stops and restarts during startup

    Possible reasons & Solutions:
    1. Microservice is not registered with the consul
      • Check the consul if the microservice is registered with it and the MS is able to fetch the app config from the CBS. Check if CBS and consul are deployed properly and try to redeploy the MS

      The below logs will be seen if CBS is not reachable by the MS

      15:14:13.861 [main] WARN org.postgresql.Driver - JDBC URL port: 0 not valid (1:65535) 15:14:13.862 [main] WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaConfiguration’: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘dataSource’ defined in org.onap.dcaegen2.services.sonhms.Application: Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘org.springframework.boot.autoconfigure.jdbc.DataSourceInitializerInvoker’: Invocation of init method failed; nested exception is org.springframework.jdbc.datasource.init.UncategorizedScriptException: Failed to execute database script; nested exception is java.lang.RuntimeException: Driver org.postgresql.Driver claims to not accept jdbcUrl, jdbc:postgresql://null:0/sonhms 15:14:13.865 [main] INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] 15:14:13.877 [main] INFO o.s.b.a.l.ConditionEvaluationReportLoggingListener - Error starting ApplicationContext. To display the conditions report re-run your application with ‘debug’ enabled. 15:14:13.880 [main] ERROR o.s.boot.SpringApplication - Application run failed

    1. MS is not able to fetch the config policies from the policy handler.
      • Check if the config policy for the MS is created and pushed into the policy module. The below logs will be seen if the config policies are not available.

      2019-05-16 14:48:48.651 LOG <sonhms> [son_policy_widelm.create] INFO: latest policy for policy_id(com.Config_PCIMS_CONFIG_POLICY.1.xml) status(404) response: {} 2019-05-16 14:48:49.661 LOG <sonhms> [son_policy_widelm.create] INFO: exit policy_get 2019-05-16 14:48:49.661 LOG <sonhms> [son_policy_widelm.create] INFO: policy not found for policy_id com.Config_PCIMS_CONFIG_POLICY.1.xml 2019-05-16 14:48:49.456 CFY <sonhms> [son_policy_widelm.create] Task succeeded ‘dcaepolicyplugin.policy_get’ 2019-05-16 14:48:50.283 CFY <sonhms> [son_policy_widelm] Configuring node 2019-05-16 14:48:50.283 CFY <sonhms> [son_policy_widelm] Configuring node 2019-05-16 14:48:51.333 CFY <sonhms> [son_policy_widelm] Starting node 2019-05-16 14:50:02.996 LOG <sonhms> [pgaasvm_fb20w3.create] WARNING: All done 2019-05-16 14:50:02.902 CFY <sonhms> [pgaasvm_fb20w3.create] Task succeeded ‘pgaas.pgaas_plugin.create_database’

Logging

  1. Logs can be found either from kubernetes UI or from kubectl. Since, the MS is deployed as a pod in the kubernetes, you can check the logs by using the command
    kubectl logs <pod-name> –namespace onap