Open Moohanad opened 6 years ago
@Moohanad There was a bug with the xml file. I have pushed a quick fix to the file. Please do a 'git pull' and try again.
For installation instructions, please take a look at our installation guide. Please let us know if you have any other questions. Thanks.
Hi We were able to build, and the GUI was shown . But in connecting to the middle-ware in graphical interface, we got the issue below.
Thanks
~/dbseer/dbseer_front_end$ java -Xmx2048M -jar out/artifacts/dbseer_front_end_jar/dbseer_front_end.jar /usr/share/themes/Ambiance/gtk-2.0/apps/mate-panel.rc:30: error: invalid string constant "murrine-scrollbar", expected valid string constant /usr/share/themes/Ambiance/gtk-2.0/apps/mate-panel.rc:30: error: invalid string constant "murrine-scrollbar", expected valid string constant Exception in thread "AWT-EventQueue-1" java.lang.UnsupportedClassVersionError: dbseer/middleware/client/MiddlewareClient : Unsupported major.minor version 52.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:803) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:442) at java.net.URLClassLoader.access$100(URLClassLoader.java:64) at java.net.URLClassLoader$1.run(URLClassLoader.java:354) at java.net.URLClassLoader$1.run(URLClassLoader.java:348) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:347) at java.lang.ClassLoader.loadClass(ClassLoader.java:425) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:312) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) at dbseer.middleware.MiddlewareClientRunner.run(MiddlewareClientRunner.java:55) at dbseer.gui.panel.DBSeerMiddlewarePanel.actionPerformed(DBSeerMiddlewarePanel.java:213) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252) at java.awt.Component.processMouseEvent(Component.java:6516) at javax.swing.JComponent.processMouseEvent(JComponent.java:3311) at java.awt.Component.processEvent(Component.java:6281) at java.awt.Container.processEvent(Container.java:2229) at java.awt.Component.dispatchEventImpl(Component.java:4872) at java.awt.Container.dispatchEventImpl(Container.java:2287) at java.awt.Component.dispatchEvent(Component.java:4698) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422) at java.awt.Container.dispatchEventImpl(Container.java:2273) at java.awt.Window.dispatchEventImpl(Window.java:2718) at java.awt.Component.dispatchEvent(Component.java:4698) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:747) at java.awt.EventQueue.access$300(EventQueue.java:103) at java.awt.EventQueue$3.run(EventQueue.java:706) at java.awt.EventQueue$3.run(EventQueue.java:704) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.awt.EventQueue$4.run(EventQueue.java:720) at java.awt.EventQueue$4.run(EventQueue.java:718) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:717) at org.GNOME.Accessibility.AtkWrapper$5.dispatchEvent(AtkWrapper.java:700) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:218) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:133) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:122) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:118) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:110) at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
The problem was caused due to the Java version mismatch between DBSeer and its middleware. I have made a quick fix to ensure that both creates binaries as Java 7 class files.
Please do 'git pull' on both DBSeer and the middleware, and build them again. It should not show such message afterwards. Thanks.
Still doesn't work. Connection fails. Error messages attached.
----MIDDLEWARE----- ./middleware 12345 localhost 3306 10 pasmple am Error in output java.io.IOException: Broken pipe at sun.nio.ch.FileDispatcherImpl.write0(Native Method) at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47) at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93) at sun.nio.ch.IOUtil.write(IOUtil.java:65) at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:492) at middleware.MiddleSocketChannel.sendOutput(MiddleSocketChannel.java:60) at middleware.NewWorker.run(NewWorker.java:101) Error in receive data
java.io.IOException: Connection reset by peer at sun.nio.ch.FileDispatcherImpl.read0(Native Method) at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:39) at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223) at sun.nio.ch.IOUtil.read(IOUtil.java:197) at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:384) at middleware.MiddleSocketChannel.getInput(MiddleSocketChannel.java:76) at middleware.NewWorker.run(NewWorker.java:86)
----Front End----- ~/dbseer/dbseer_front_end$ java -Xmx2048M -jar out/artifacts/dbseefront_end_jar/dbseer_front_end.jar /usr/share/themes/Ambiance/gtk-2.0/apps/mate-panel.rc:30: error: invalid string constant "murrine-scrollbar", expected valid string constant /usr/share/themes/Ambiance/gtk-2.0/apps/mate-panel.rc:30: error: invalid string constant "murrine-scrollbar", expected valid string constant io.netty.handler.codec.compression.DecompressionException: decompression failure (-3): incorrect header check at io.netty.handler.codec.compression.ZlibUtil.inflaterException(ZlibUtil.java:36) at io.netty.handler.codec.compression.ZlibUtil.fail(ZlibUtil.java:28) at io.netty.handler.codec.compression.JZlibDecoder.decode(JZlibDecoder.java:154) at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:360) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:244) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:318) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:304) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:266) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:318) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:304) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:846) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:131) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:112) at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:137) at java.lang.Thread.run(Thread.java:748) io.netty.handler.codec.compression.DecompressionException: decompression failure (-3): incorrect header check at io.netty.handler.codec.compression.ZlibUtil.inflaterException(ZlibUtil.java:36) at io.netty.handler.codec.compression.ZlibUtil.fail(ZlibUtil.java:28) at io.netty.handler.codec.compression.JZlibDecoder.decode(JZlibDecoder.java:154) at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:360) at io.netty.handler.codec.ByteToMessageDecoder.channelInactive(ByteToMessageDecoder.java:311) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:218) at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:204) at io.netty.channel.ChannelInboundHandlerAdapter.channelInactive(ChannelInboundHandlerAdapter.java:75) at io.netty.handler.timeout.IdleStateHandler.channelInactive(IdleStateHandler.java:257) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:218) at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:204) at io.netty.channel.DefaultChannelPipeline.fireChannelInactive(DefaultChannelPipeline.java:828) at io.netty.channel.AbstractChannel$AbstractUnsafe$7.run(AbstractChannel.java:625) at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:358) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:357) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:112) at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:137) at java.lang.Thread.run(Thread.java:748)
I am sorry for the confusion, but the current middleware can be found here. The 'middleware' directory in this repository is an outdated version and not operational. Please check the repository in the link for the instructions.
To reduce the confusion, I renamed the directory to 'middleware_old'.
Even with the new middleware we still have problems. It seems to be looking for a MariaDB, and we're using Mysql.
middleware.cnf: [dbseer_middleware]
id=mooh
password=****
listen_port=3555
named_pipe=/tmp/dbseerroute
dblog_path=/tmp/maxscale/perf.log
syslog_dir=/tmp/maxscale
servers=server1
[server1]
db_host=localhost db_port=3306 db_user=root db_pw=**** db_name=test
ssh_user=mooh monitor_dir=/home/mooh/dbseer/dbseer_middleware/rs-sysmon2/ monitor_script=monitor.sh
mooh@osboxes:~/dbseer/dbseer_middleware$ ./middleware.sh 00:00 INFO: Listening port = 3555 00:00 INFO: DB log dir = /tmp/maxscale/perf.log 00:00 INFO: System log dir = /tmp/maxscale 00:00 INFO: DB Port = 3306 00:00 INFO: DB Name = test 00:00 INFO: DB User = root 00:00 INFO: DB PW = * 00:00 INFO: SSH User = mooh 00:00 INFO: Remote Monitor Dir = /home/mooh/dbseer/dbseer_middleware/rs-sysmon2/ 00:00 INFO: Remote Monitor Script = monitor.sh 00:00 INFO: Getting DB statistics 00:00 INFO: [Server : server1] 00:00 INFO: DB Host = localhost 00:00 INFO: DB Port = 3306 00:00 INFO: DB Name = test 00:00 INFO: DB User = root 00:00 INFO: DB PW = 00:00 INFO: SSH User = mooh 00:00 INFO: Remote Monitor Dir = /home/mooh/dbseer/dbseer_middleware/rs-sysmon2/ 00:00 INFO: Remote Monitor Script = monitor.sh 00:00 INFO: Getting DB statistics 00:00 ERROR: Cannot open the named pipe for communication with dbseerroute. You must run Maxscale with dbseerroute with correct named pipe first.
I think using mysql is fine, but you need to use MariaDB MaxScale as a gateway.
The middleware requires MariaDB MaxScale with the dbseerroute plugin, which is a custom router plugin that is necessary to collect required transaction information. The MariaDB MaxScale with the dbseerroute plugin is available here.
Hi,
My JAVA_HOME is set to /usr/lib/jvm/java-1.7.0-openjdk-amd64 because it seemed that java-9-oracle is not supported with your program. I tried to build the dbseer_frontend with both intellij and manually but non of these worked.
Btw, could you please provide a step-by-step video tutorial of installing the program?.
Here is the output of the ant command: ~/dbseer/dbseer_front_end$ ant -f dbseer_front_end.xml Buildfile: /home/mooh/dbseer/dbseer_front_end/dbseer_front_end.xml
init:
clean.module.dbseer_front_end: [delete] Deleting directory /home/mooh/dbseer/dbseer_front_end/out/production/dbseer_front_end
clean:
compile.module.dbseer_front_end.production: [mkdir] Created dir: /home/mooh/dbseer/dbseer_front_end/out/production/dbseer_front_end [javac] /home/mooh/dbseer/dbseer_front_end/dbseer_front_end.xml:259: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds [javac] Compiling 148 source files to /home/mooh/dbseer/dbseer_front_end/out/production/dbseer_front_end [javac] /home/mooh/dbseer/dbseer_front_end/src/dbseer/comp/clustering/IncrementalDBSCAN.java:19: error: package com.esotericsoftware.minlog does not exist [javac] import com.esotericsoftware.minlog.Log; [javac] ^ [javac] /home/mooh/dbseer/dbseer_front_end/src/dbseer/comp/process/live/LiveLogProcessor.java:27: error: package dbseer.middleware.constant does not exist [javac] import dbseer.middleware.constant.MiddlewareConstants; [javac] ^ [javac] /home/mooh/dbseer/dbseer_front_end/src/dbseer/gui/DBSeerGUI.java:19: error: package com.esotericsoftware.minlog does not exist [javac] import com.esotericsoftware.minlog.Log; [javac] ^ [javac] /home/mooh/dbseer/dbseer_front_end/src/dbseer/gui/panel/DBSeerMiddlewarePanel.java:33: error: package dbseer.middleware.event does not exist [javac] import dbseer.middleware.event.MiddlewareClientEvent; [javac] ^ [javac] /home/mooh/dbseer/dbseer_front_end/src/dbseer/middleware/MiddlewareClientRunner.java:19: error: package com.esotericsoftware.minlog does not exist [javac] import com.esotericsoftware.minlog.Log; [javac] ^ [javac] /home/mooh/dbseer/dbseer_front_end/src/dbseer/middleware/MiddlewareClientRunner.java:21: error: package dbseer.middleware.client does not exist [javac] import dbseer.middleware.client.MiddlewareClient; [javac] ^ [javac] /home/mooh/dbseer/dbseer_front_end/src/dbseer/middleware/MiddlewareClientRunner.java:41: error: cannot find symbol [javac] private MiddlewareClient client; [javac] ^ [javac] symbol: class MiddlewareClient [javac] location: class MiddlewareClientRunner [javac] /home/mooh/dbseer/dbseer_front_end/src/dbseer/comp/process/live/LiveLogProcessor.java:86: error: cannot find symbol [javac] servers = serverStr.split(MiddlewareConstants.SERVER_STRING_DELIMITER); [javac] ^ [javac] symbol: variable MiddlewareConstants [javac] location: class LiveLogProcessor [javac] /home/mooh/dbseer/dbseer_front_end/src/dbseer/gui/panel/DBSeerMiddlewarePanel.java:685: error: cannot find symbol [javac] MiddlewareClientEvent event = (MiddlewareClientEvent) arg; [javac] ^ [javac] symbol: class MiddlewareClientEvent [javac] location: class DBSeerMiddlewarePanel [javac] /home/mooh/dbseer/dbseer_front_end/src/dbseer/gui/panel/DBSeerMiddlewarePanel.java:685: error: cannot find symbol [javac] MiddlewareClientEvent event = (MiddlewareClientEvent) arg; [javac] ^ [javac] symbol: class MiddlewareClientEvent [javac] location: class DBSeerMiddlewarePanel [javac] /home/mooh/dbseer/dbseer_front_end/src/dbseer/gui/panel/DBSeerMiddlewarePanel.java:686: error: cannot find symbol [javac] if (event.event == MiddlewareClientEvent.IS_MONITORING) [javac] ^ [javac] symbol: variable MiddlewareClientEvent [javac] location: class DBSeerMiddlewarePanel [javac] /home/mooh/dbseer/dbseer_front_end/src/dbseer/gui/panel/DBSeerMiddlewarePanel.java:710: error: cannot find symbol [javac] else if (event.event == MiddlewareClientEvent.IS_NOT_MONITORING) [javac] ^ [javac] symbol: variable MiddlewareClientEvent [javac] location: class DBSeerMiddlewarePanel [javac] /home/mooh/dbseer/dbseer_front_end/src/dbseer/gui/panel/DBSeerMiddlewarePanel.java:719: error: cannot find symbol [javac] else if (event.event == MiddlewareClientEvent.ERROR) [javac] ^ [javac] symbol: variable MiddlewareClientEvent [javac] location: class DBSeerMiddlewarePanel [javac] /home/mooh/dbseer/dbseer_front_end/src/dbseer/middleware/MiddlewareClientRunner.java:55: error: cannot find symbol [javac] client = new MiddlewareClient(host, id, password, port, dir); [javac] ^ [javac] symbol: class MiddlewareClient [javac] location: class MiddlewareClientRunner [javac] /home/mooh/dbseer/dbseer_front_end/src/dbseer/middleware/MiddlewareClientRunner.java:57: error: cannot find symbol [javac] client.setLogLevel(Log.LEVEL_NONE); [javac] ^ [javac] symbol: variable Log [javac] location: class MiddlewareClientRunner [javac] Note: Some input files use or override a deprecated API. [javac] Note: Recompile with -Xlint:deprecation for details. [javac] Note: Some input files use unchecked or unsafe operations. [javac] Note: Recompile with -Xlint:unchecked for details. [javac] 15 errors
BUILD FAILED /home/mooh/dbseer/dbseer_front_end/dbseer_front_end.xml:259: Compile failed; see the compiler error output for details.
Total time: 6 seconds