The wiki mentioned that argus had been tested with postgres as a persistant database. I attempted to configure that, and ran into an exception trying to create a JPAEntity
[ ARGUS | *NULLSESSION* | *NULLUSER* | *NULLTXID* | 2016-12-08 09:00:28.611 | ost-startStop-1 | DEBUG ] Retrieving the administrative user.
[ ARGUS | *NULLSESSION* | *NULLUSER* | *NULLTXID* | 2016-12-08 09:00:28.620 | ost-startStop-1 | DEBUG ] Query for user having id 1 resulted in : null
[ ARGUS | *NULLSESSION* | *NULLUSER* | *NULLTXID* | 2016-12-08 09:00:28.629 | ost-startStop-1 | DEBUG ] Updated user to : PrincipalUser{userName=admin, [email protected], preferences={{}}, privileged=true}
[ ARGUS | *NULLSESSION* | *NULLUSER* | *NULLTXID* | 2016-12-08 09:00:28.664 | ost-startStop-1 | DEBUG ] Created audit object Audit{id=1, createdDate=Thu Dec 08 09:00:28 GMT 2016, message=Updated user : PrincipalUser{userName=admin, [email protected], preferences={{}}, privileged=true}, hostName=argus-web-services, object=1}
[ ARGUS | *NULLSESSION* | *NULLUSER* | *NULLTXID* | 2016-12-08 09:00:28.679 | ost-startStop-1 | ERROR ] SystemMain startup aborted.
com.salesforce.dva.argus.system.SystemException: javax.persistence.PersistenceException: Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.6.2.v20151217-774c696): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: org.postgresql.util.PSQLException: ERROR: column "deleted" is of type smallint but expression is of type boolean
Hint: You will need to rewrite or cast the expression.
Position: 116
Error Code: 0
Call: INSERT INTO JPAENTITY (ID, CREATEDDATE, DELETED, MODIFIEDDATE, CREATEDBY_ID, MODIFIEDBY_ID, DTYPE) VALUES (?, ?, ?, ?, ?, ?, ?)
bind => [1, 2016-12-08 09:00:28.627, false, 2016-12-08 09:00:28.627, null, null, PrincipalUser]
Query: InsertObjectQuery(PrincipalUser{userName=admin, [email protected], preferences={{}}, privileged=true})
at com.salesforce.dva.argus.service.jpa.DefaultUserService.findAdminUser(DefaultUserService.java:148) ~[argus-core-2.2.1-SNAPSHOT.jar:na]
at com.google.inject.persist.jpa.JpaLocalTxnInterceptor.invoke(JpaLocalTxnInterceptor.java:70) ~[guice-persist-4.0.jar:na]
at com.salesforce.dva.argus.system.SystemMain.doStart(SystemMain.java:114) ~[argus-core-2.2.1-SNAPSHOT.jar:na]
at com.salesforce.dva.argus.system.SystemService.start(SystemService.java:104) [argus-core-2.2.1-SNAPSHOT.jar:na]
at com.salesforce.dva.argus.ws.listeners.ArgusWebServletListener.contextInitialized(ArgusWebServletListener.java:92) [classes/:na]
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5118) [catalina.jar:7.0.73]
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5634) [catalina.jar:7.0.73]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145) [catalina.jar:7.0.73]
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:899) [catalina.jar:7.0.73]
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:875) [catalina.jar:7.0.73]
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652) [catalina.jar:7.0.73]
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1092) [catalina.jar:7.0.73]
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1984) [catalina.jar:7.0.73]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_111-internal]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_111-internal]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_111-internal]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_111-internal]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_111-internal]
Caused by: javax.persistence.PersistenceException: Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.6.2.v20151217-774c696): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: org.postgresql.util.PSQLException: ERROR: column "deleted" is of type smallint but expression is of type boolean
Hint: You will need to rewrite or cast the expression.
Position: 116
Error Code: 0
Call: INSERT INTO JPAENTITY (ID, CREATEDDATE, DELETED, MODIFIEDDATE, CREATEDBY_ID, MODIFIEDBY_ID, DTYPE) VALUES (?, ?, ?, ?, ?, ?, ?)
bind => [1, 2016-12-08 09:00:28.627, false, 2016-12-08 09:00:28.627, null, null, PrincipalUser]
Query: InsertObjectQuery(PrincipalUser{userName=admin, [email protected], preferences={{}}, privileged=true})
at org.eclipse.persistence.internal.jpa.EntityManagerImpl.flush(EntityManagerImpl.java:879) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at com.salesforce.dva.argus.service.jpa.DefaultUserService.updateUser(DefaultUserService.java:128) ~[argus-core-2.2.1-SNAPSHOT.jar:na]
at com.google.inject.persist.jpa.JpaLocalTxnInterceptor.invoke(JpaLocalTxnInterceptor.java:62) ~[guice-persist-4.0.jar:na]
at com.salesforce.dva.argus.service.jpa.DefaultUserService.findAdminUser(DefaultUserService.java:145) ~[argus-core-2.2.1-SNAPSHOT.jar:na]
... 17 common frames omitted
Caused by: org.eclipse.persistence.exceptions.DatabaseException:
Internal Exception: org.postgresql.util.PSQLException: ERROR: column "deleted" is of type smallint but expression is of type boolean
Hint: You will need to rewrite or cast the expression.
Position: 116
Error Code: 0
Call: INSERT INTO JPAENTITY (ID, CREATEDDATE, DELETED, MODIFIEDDATE, CREATEDBY_ID, MODIFIEDBY_ID, DTYPE) VALUES (?, ?, ?, ?, ?, ?, ?)
bind => [1, 2016-12-08 09:00:28.627, false, 2016-12-08 09:00:28.627, null, null, PrincipalUser]
Query: InsertObjectQuery(PrincipalUser{userName=admin, [email protected], preferences={{}}, privileged=true})
at org.eclipse.persistence.exceptions.DatabaseException.sqlException(DatabaseException.java:340) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.basicExecuteCall(DatabaseAccessor.java:684) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeCall(DatabaseAccessor.java:560) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.sessions.AbstractSession.basicExecuteCall(AbstractSession.java:2055) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.sessions.server.ClientSession.executeCall(ClientSession.java:306) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:242) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.insertObject(DatasourceCallQueryMechanism.java:363) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.queries.StatementQueryMechanism.insertObject(StatementQueryMechanism.java:165) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.queries.StatementQueryMechanism.insertObject(StatementQueryMechanism.java:180) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.queries.DatabaseQueryMechanism.insertObjectForWrite(DatabaseQueryMechanism.java:489) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.queries.InsertObjectQuery.executeCommit(InsertObjectQuery.java:80) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.queries.InsertObjectQuery.executeCommitWithChangeSet(InsertObjectQuery.java:90) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.queries.DatabaseQueryMechanism.executeWriteWithChangeSet(DatabaseQueryMechanism.java:301) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.queries.WriteObjectQuery.executeDatabaseQuery(WriteObjectQuery.java:58) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQuery.java:904) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.queries.DatabaseQuery.executeInUnitOfWork(DatabaseQuery.java:803) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.queries.ObjectLevelModifyQuery.executeInUnitOfWorkObjectLevelModifyQuery(ObjectLevelModifyQuery.java:108) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.queries.ObjectLevelModifyQuery.executeInUnitOfWork(ObjectLevelModifyQuery.java:85) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.internalExecuteQuery(UnitOfWorkImpl.java:2896) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1857) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1839) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1790) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.sessions.CommitManager.commitNewObjectsForClassWithChangeSet(CommitManager.java:227) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.sessions.CommitManager.commitAllObjectsForClassWithChangeSet(CommitManager.java:194) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.sessions.CommitManager.commitAllObjectsWithChangeSet(CommitManager.java:139) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.sessions.AbstractSession.writeAllObjectsWithChangeSet(AbstractSession.java:4263) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.commitToDatabase(UnitOfWorkImpl.java:1441) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.commitToDatabaseWithPreBuiltChangeSet(UnitOfWorkImpl.java:1587) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.writeChanges(RepeatableWriteUnitOfWork.java:455) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.jpa.EntityManagerImpl.flush(EntityManagerImpl.java:874) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
... 20 common frames omitted
Caused by: org.postgresql.util.PSQLException: ERROR: column "deleted" is of type smallint but expression is of type boolean
Hint: You will need to rewrite or cast the expression.
Position: 116
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2103) ~[postgresql-9.1-901-1.jdbc4.jar:na]
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1836) ~[postgresql-9.1-901-1.jdbc4.jar:na]
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257) ~[postgresql-9.1-901-1.jdbc4.jar:na]
at org.postgresql.jdbc3.AbstractJdbc3Statement.getParameterMetaData(AbstractJdbc3Statement.java:414) ~[postgresql-9.1-901-1.jdbc4.jar:na]
at org.eclipse.persistence.platform.database.DerbyPlatform.setNullFromDatabaseField(DerbyPlatform.java:302) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.databaseaccess.DatabasePlatform.setParameterValueInDatabaseCall(DatabasePlatform.java:2477) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.databaseaccess.DatabaseCall.prepareStatement(DatabaseCall.java:797) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.basicExecuteCall(DatabaseAccessor.java:621) ~[eclipselink-2.6.2.jar:2.6.2.v20151217-774c696]
... 48 common frames omitted
# Default settings for unit and integration tests.
build.property.persistence.unit=<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>\n\
<exclude-unlisted-classes>false</exclude-unlisted-classes>\n\
<properties>\n\
<property name="javax.persistence.schema-generation.database.action" value="drop-and-create-tables"/>\n\
<property name="javax.persistence.jdbc.driver" value="org.postgresql.Driver"/>\n\
<property name="javax.persistence.jdbc.url" value="jdbc:postgresql://postgres:5432/argus_user"/>\n\
<property name="javax.persistence.jdbc.user" value="argus_user"/>\n\
<property name="javax.persistence.jdbc.password" value="password"/>\n\
<property name="eclipselink.ddl-generation" value="drop-and-create-tables"/>\n\
<property name="eclipselink.logging.level" value="SEVERE"/>\n\
<property name="eclipselink.logging.parameters" value="true"/>\n\
<property name="eclipselink.target-database" value="Auto"/>\n\
<property name="eclipselink.canonicalmodel.subpackage" value="unit"/>\n\
</properties>
build.property.secure.cookies=false
[email protected]
system.property.log.level=ERROR
system.property.mail.enabled=false
service.property.mq.connection.count=2
service.property.mq.endpoint=vm\://localhost?broker.persistent\=false
service.property.auth.ldap.authtype=simple
service.property.auth.ldap.endpoint=ldaps://ldaps.mycomany.com:636
service.property.auth.ldap.searchbase=OU=active,OU=users,DC=mycompany,DC=com:OU\=active,OU\=robot,DC\=mycompany,DC\=com
service.property.auth.ldap.searchdn=CN=argus_service,OU=active,OU=users,DC=mycompany,DC=com
service.property.auth.ldap.searchpwd=argus_service_password
service.property.auth.ldap.usernamefield=sAMAccountName
service.property.mail.alerturl.template=https\://localhost\:8443/argus/\#/alerts/$alertid$
service.property.mail.metricurl.template=https\://localhost\:8443/argus/\#/viewmetrics?expression\=$expression$
service.property.mail.smtp.auth=false
service.property.mail.smtp.host=smtprelay.mycompany.com
service.property.mail.smtp.starttls.enable=false
service.property.tsdb.connection.count=2
service.property.tsdb.endpoint.read=http://tsdbread.mycompany.com:4466
service.property.tsdb.endpoint.timeout=10000
service.property.tsdb.endpoint.write=http://tsdbwrite.mycompany.com:4477
service.property.cache.redis.cluster=redis0.mycompany.com:6379,redis1.mycompany.com:6389
asynchbase.property.hbase.zookeeper.connect=host1,host2:2181
# Default settings for unit and integration tests.
build.property.persistence.unit=<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>\n\
<exclude-unlisted-classes>false</exclude-unlisted-classes>\n\
<properties>\n\
<property name="javax.persistence.schema-generation.database.action" value="drop-and-create-tables"/>\n\
<property name="javax.persistence.jdbc.driver" value="org.postgresql.Driver"/>\n\
<property name="javax.persistence.jdbc.url" value="jdbc:postgresql://postgres:5432/argus_user"/>\n\
<property name="javax.persistence.jdbc.user" value="argus_user"/>\n\
<property name="javax.persistence.jdbc.password" value="password"/>\n\
<property name="eclipselink.ddl-generation" value="drop-and-create-tables"/>\n\
<property name="eclipselink.logging.level" value="SEVERE"/>\n\
<property name="eclipselink.logging.parameters" value="true"/>\n\
<property name="eclipselink.target-database" value="DERBY"/>\n\
<property name="eclipselink.canonicalmodel.subpackage" value="unit"/>\n\
</properties>
build.property.secure.cookies=false
[email protected]
system.property.log.level=DEBUG
system.property.mail.enabled=false
# skip ldap (any user can log in with any password)
service.binding.auth=com.salesforce.dva.argus.service.auth.NoAuthService
service.property.mail.alerturl.template=https\://localhost\:8443/argus/\#/alerts/$alertid$
service.property.mail.metricurl.template=https\://localhost\:8443/argus/\#/viewmetrics?expression\=$expression$
service.property.mail.smtp.auth=false
service.property.mail.smtp.host=smtprelay.mycompany.com
service.property.mail.smtp.starttls.enable=false
service.property.tsdb.connection.count=2
service.property.tsdb.endpoint.read=http://opentsdb:4242
service.property.tsdb.endpoint.timeout=10000
service.property.tsdb.endpoint.write=http://opentsdb:4242
service.property.cache.redis.cluster=redis:6379
# kafka
service.property.mq.kafka.brokers=kafka:9092
service.property.mq.zookeeper.connect=kafka:2181