http://jira.hyperic.com/browse/HHQ-1957
To reproduce:
Install Management and Monitoring package from Windows components
Turn on Windows SNMP service
Add the configured machine as Network Host and configure its properties
The first issue I see is after adding the platform there is not yellow warning in the UI (under Inventory page) that this resource still needs to be configured (namely snmp port, community string, protocol and snmp ip address)
After adding the resource I see following WARN stack trace in server log (see attached server.log). The stack seems unnecessary at this point.
After configuring the properties I see agent running auto discovery and sending it successfully to server.
I see following error in server while its updating services under new platform. Full server and agent logs are attached.
Another issue is the metric data values 2 services that got auto discovered (Network Host Storage and Network Host Network).
Under Storage the size and used metrics are 32 KB for my HD which is 70G
2008-04-10 13:04:28,977 INFO [RuntimeAIServiceMerger1] [org.hyperic.hq.autoinventory.server.session.AutoinventoryManagerEJBImpl] Creating new service: Kparikh-T60 laptop snmp Physical Memory Storage
2008-04-10 13:04:29,208 INFO [RuntimeAIServiceMerger1] [org.hyperic.hq.autoinventory.server.session.AutoinventoryManagerEJBImpl] Updating service: kparikh-T60 Win32 Network Interface eth0 (ethernet)
2008-04-10 13:04:29,363 INFO [RuntimeAIServiceMerger1] [org.hyperic.hq.autoinventory.server.session.AutoinventoryManagerEJBImpl] Updating service: kparikh-T60 Win32 Network Interface eth1 (ethernet)
2008-04-10 13:04:29,506 INFO [RuntimeAIServiceMerger1] [org.hyperic.hq.autoinventory.server.session.AutoinventoryManagerEJBImpl] Updating service: kparikh-T60 Win32 Network Interface eth2 (ethernet)
2008-04-10 13:04:29,658 INFO [RuntimeAIServiceMerger1] [org.hyperic.hq.autoinventory.server.session.AutoinventoryManagerEJBImpl] Updating service: kparikh-T60 Win32 Network Interface eth3 (ethernet)
2008-04-10 13:04:29,801 INFO [RuntimeAIServiceMerger1] [org.hyperic.hq.autoinventory.server.session.AutoinventoryManagerEJBImpl] Updating service: kparikh-T60 Win32 Network Interface eth4 (ethernet)
2008-04-10 13:04:29,946 INFO [RuntimeAIServiceMerger1] [org.hyperic.hq.autoinventory.server.session.AutoinventoryManagerEJBImpl] Updating service: kparikh-T60 Win32 Network Interface lo0 (loopback)
2008-04-10 13:04:30,057 INFO [RuntimeAIServiceMerger1] [org.hyperic.hq.autoinventory.server.session.AutoinventoryManagerEJBImpl] Updating service: kparikh-T60 Win32 CPU 1 (1995Mhz Intel Core(TM)2 CPU T7200 @ 2.00GHz)
2008-04-10 13:04:30,096 INFO [RuntimeAIServiceMerger1] [org.hyperic.hq.autoinventory.server.session.AutoinventoryManagerEJBImpl] Updating service: kparikh-T60 Win32 CPU 2 (1995Mhz Intel Core(TM)2 CPU T7200 @ 2.00GHz)
2008-04-10 13:04:30,135 INFO [RuntimeAIServiceMerger1] [org.hyperic.hq.autoinventory.server.session.AutoinventoryManagerEJBImpl] Updating service: kparikh-T60 Win32 File System C:\ (local/NTFS)
2008-04-10 13:04:30,175 INFO [RuntimeAIServiceMerger1] [org.hyperic.hq.autoinventory.server.session.AutoinventoryManagerEJBImpl] Updating service: kparikh-T60 .NET 2.0 CCC
2008-04-10 13:04:30,213 INFO [RuntimeAIServiceMerger1] [org.hyperic.hq.autoinventory.server.session.AutoinventoryManagerEJBImpl] Updating service: kparikh-T60 .NET 2.0 MOM
2008-04-10 13:04:30,252 INFO [RuntimeAIServiceMerger1] [org.hyperic.hq.autoinventory.server.session.AutoinventoryManagerEJBImpl] Updating service: kparikh-T60 .NET 2.0 SUService
2008-04-10 13:04:31,811 INFO [MeasurementEnabler1] [org.hibernate.type.StringType] could not bind value 'Network Host Interface:snmp:snmpIp=127.0.0.1,snmpPort=161,snmpVersion=v2c,snmpCommunity=public,snmpUser=username,snmpPassword=,snmpAuthType=md5:ifAdminStatus:snmpIndexName=ifDescr,snmpIndexValue=MS TCP Loopback interface' to parameter: 6; Zero bytes may not occur in string parameters.
2008-04-10 13:04:31,817 WARN [MeasurementEnabler1] [org.hibernate.util.JDBCExceptionReporter] SQL Error: 0, SQLState: 22023
2008-04-10 13:04:31,817 ERROR [MeasurementEnabler1] [org.hibernate.util.JDBCExceptionReporter] Zero bytes may not occur in string parameters.
2008-04-10 13:04:31,818 ERROR [MeasurementEnabler1] [org.hibernate.event.def.AbstractFlushingEventListener] Could not synchronize database state with session
org.hibernate.exception.DataException: could not insert: [org.hyperic.hq.measurement.server.session.RawMeasurement]
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:77)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2267)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2660)
at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:52)
at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:248)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:232)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:139)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
at org.hibernate.event.def.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:41)
at org.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:969)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1114)
at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
at org.hibernate.impl.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:811)
at org.hyperic.hq.measurement.server.session.RawMeasurementDAO.findByTemplateForInstance(RawMeasurementDAO.java:135)
at org.hyperic.hq.measurement.server.session.DerivedMeasurementManagerEJBImpl.getRawIdByTemplateAndInstance(DerivedMeasurementManagerEJBImpl.java:197)
at org.hyperic.hq.measurement.server.session.DerivedMeasurementManagerEJBImpl.createMeasurements(DerivedMeasurementManagerEJBImpl.java:347)
at sun.reflect.GeneratedMethodAccessor837.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.jboss.invocation.Invocation.performCall(Invocation.java:345)
at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:214)
at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:149)
at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:154)
at org.jboss.webservice.server.ServiceEndpointInterceptor.invoke(ServiceEndpointInterceptor.java:54)
at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:48)
at org.hyperic.hq.application.HQApp$Snatcher.invokeNextBoth(HQApp.java:416)
at org.hyperic.hq.application.HQApp$Snatcher.invokeNext(HQApp.java:468)
at org.hyperic.txsnatch.TxSnatch.invoke(TxSnatch.java:71)
at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:106)
at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:389)
at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:166)
at org.hyperic.hq.application.HQApp$Snatcher.invokeNextBoth(HQApp.java:416)
at org.hyperic.hq.application.HQApp$Snatcher.invokeNext(HQApp.java:468)
at org.hyperic.txsnatch.TxSnatch.invoke(TxSnatch.java:71)
at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:153)
at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:192)
at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:624)
at org.jboss.ejb.Container.invoke(Container.java:873)
at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:415)
at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:88)
at $Proxy315.createMeasurements(Unknown Source)
at org.hyperic.hq.measurement.server.session.DerivedMeasurementManagerEJBImpl.createMeasurements(DerivedMeasurementManagerEJBImpl.java:438)
at sun.reflect.GeneratedMethodAccessor836.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.jboss.invocation.Invocation.performCall(Invocation.java:345)
at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:214)
at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:149)
at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:154)
at org.jboss.webservice.server.ServiceEndpointInterceptor.invoke(ServiceEndpointInterceptor.java:54)
at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:48)
at org.hyperic.hq.application.HQApp$Snatcher.invokeNextBoth(HQApp.java:416)
at org.hyperic.hq.application.HQApp$Snatcher.invokeNext(HQApp.java:468)
at org.hyperic.txsnatch.TxSnatch.invoke(TxSnatch.java:71)
at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:106)
at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:335)
at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:166)
at org.hyperic.hq.application.HQApp$Snatcher.invokeNextBoth(HQApp.java:416)
at org.hyperic.hq.application.HQApp$Snatcher.invokeNext(HQApp.java:468)
at org.hyperic.txsnatch.TxSnatch.invoke(TxSnatch.java:71)
at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:153)
at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:192)
at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:624)
at org.jboss.ejb.Container.invoke(Container.java:873)
at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:415)
at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:88)
at $Proxy315.createMeasurements(Unknown Source)
at org.hyperic.hq.measurement.server.session.DerivedMeasurementManagerEJBImpl.createDefaultMeasurements(DerivedMeasurementManagerEJBImpl.java:512)
at org.hyperic.hq.measurement.server.session.DerivedMeasurementManagerEJBImpl.enableDefaultMetrics(DerivedMeasurementManagerEJBImpl.java:1648)
at org.hyperic.hq.measurement.server.session.DerivedMeasurementManagerEJBImpl.handleCreateRefreshEvents(DerivedMeasurementManagerEJBImpl.java:1565)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.jboss.invocation.Invocation.performCall(Invocation.java:345)
at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:214)
at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:149)
at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:154)
at org.jboss.webservice.server.ServiceEndpointInterceptor.invoke(ServiceEndpointInterceptor.java:54)
at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:48)
at org.hyperic.hq.application.HQApp$Snatcher.invokeNextBoth(HQApp.java:416)
at org.hyperic.hq.application.HQApp$Snatcher.invokeNext(HQApp.java:468)
at org.hyperic.txsnatch.TxSnatch.invoke(TxSnatch.java:71)
at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:106)
at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:335)
at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:166)
at org.hyperic.hq.application.HQApp$Snatcher.invokeNextBoth(HQApp.java:416)
at org.hyperic.hq.application.HQApp$Snatcher.invokeNext(HQApp.java:468)
at org.hyperic.txsnatch.TxSnatch.invoke(TxSnatch.java:71)
at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:153)
at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:192)
at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:624)
at org.jboss.ejb.Container.invoke(Container.java:873)
at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:415)
at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:88)
at $Proxy315.handleCreateRefreshEvents(Unknown Source)
at org.hyperic.hq.measurement.server.session.MeasurementEnabler.processEvents(MeasurementEnabler.java:36)
at org.hyperic.hq.zevents.TimingListenerWrapper.processEvents(TimingListenerWrapper.java:44)
at org.hyperic.hq.zevents.BufferedListener$BufferedEventRunnable.run(BufferedListener.java:64)
at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Unknown Source)
Caused by: org.postgresql.util.PSQLException: Zero bytes may not occur in string parameters.
at org.postgresql.core.Utils.appendEscapedString(Utils.java:106)
at org.postgresql.core.v2.SimpleParameterList.setStringParameter(SimpleParameterList.java:70)
at org.postgresql.jdbc2.AbstractJdbc2Statement.bindString(AbstractJdbc2Statement.java:2118)
at org.postgresql.jdbc2.AbstractJdbc2Statement.setString(AbstractJdbc2Statement.java:1241)
at org.postgresql.jdbc2.AbstractJdbc2Statement.setString(AbstractJdbc2Statement.java:1227)
at org.jboss.resource.adapter.jdbc.CachedPreparedStatement.setString(CachedPreparedStatement.java:131)
at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.setString(WrappedPreparedStatement.java:288)
at org.hibernate.type.StringType.set(StringType.java:26)
at org.hibernate.type.NullableType.nullSafeSet(NullableType.java:136)
at org.hibernate.type.NullableType.nullSafeSet(NullableType.java:107)
at org.hibernate.persister.entity.AbstractEntityPersister.dehydrate(AbstractEntityPersister.java:1997)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2243)
... 103 more
Anonymous