Symptoms -
The attempt to patch the vCenter Server from version 7.0U1-U2b to 7.0U3o failed due to the EAM (ESX Agent Manager) service failing to start.
The source vCenter was previously restored from a file-based backup.
The EAM service encountered the following error in the /var/log/vmware/eam/jvm.log.stderr -
Exception in thread "main" java.lang.ExceptionInInitializerErrorCaused by: org.apache.juli.logging.LogConfigurationException: java.lang.reflect.InvocationTargetException at org.apache.juli.logging.LogFactory.getInstance(LogFactory.java:136) at org.apache.juli.logging.LogFactory.getInstance(LogFactory.java:153) at org.apache.juli.logging.LogFactory.getLog(LogFactory.java:208) at org.apache.catalina.startup.Bootstrap.<clinit>(Bootstrap.java:50)Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.apache.juli.logging.LogFactory.getInstance(LogFactory.java:134) ... 3 moreCaused by: org.apache.logging.log4j.core.config.ConfigurationException: No type attribute provided for component strategy at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationBuilder.createComponent(PropertiesConfigurationBuilder.java:330) at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationBuilder.processRemainingProperties(PropertiesConfigurationBuilder.java:344) at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationBuilder.createAppender(PropertiesConfigurationBuilder.java:225) at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationBuilder.build(PropertiesConfigurationBuilder.java:158) at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationFactory.getConfiguration(PropertiesConfigurationFactory.java:56) at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationFactory.getConfiguration(PropertiesConfigurationFactory.java:35) at org.apache.logging.log4j.core.config.ConfigurationFactory.getConfiguration(ConfigurationFactory.java:302) at org.apache.logging.log4j.core.config.ConfigurationFactory$Factory.getConfiguration(ConfigurationFactory.java:465) at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:240) at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:47) at org.apache.logging.log4j.LogManager.getContext(LogManager.java:356) at org.apache.logging.log4j.appserver.tomcat.TomcatLogger$PrivateManager.getContext(TomcatLogger.java:182) at org.apache.logging.log4j.appserver.tomcat.TomcatLogger$PrivateManager.getLogger(TomcatLogger.java:186) at org.apache.logging.log4j.appserver.tomcat.TomcatLogger.<init>(TomcatLogger.java:67)
The file /etc/vmware-eam/log4j2-tomcat.properties contains an invalid line due to a missing line break -
rootLogger.level = inforootLogger.appenderRef.catalina.ref = catalinaAppenderappender.catalina.strategy.type = DefaultRolloverStrategyappender.catalina.strategy.max = 20appender.localhost.strategy.type = DefaultRolloverStrategyappender.localhost.strategy.max = 20
VMware vCenter Server 7.0.3
VMware vCenter Server 7.0.1
VMware vCenter Server 7.0.2
root@vc [ ~ ]# cat -A /etc/vmware-eam/log4j2-tomcat.properties | tail -n 1
rootLogger.appenderRef.catalina.ref = catalinaAppenderr
appender.catalina.strategy.type = DefaultRolloverStrategyappender.catalina.strategy.max = 20appender.localhost.strategy.type = DefaultRolloverStrategyappender.localhost.strategy.max = 20
rootLogger.appenderRef.catalina.ref = catalinaAppenderappender.catalina.strategy.type = DefaultRolloverStrategy
echo >> /etc/vmware-eam/log4j2-tomcat.properties