Comments (7)
@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.
from dbseer.
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)
from dbseer.
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.
from dbseer.
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)
from dbseer.
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'.
from dbseer.
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]
middleware user id
id=mooh
# middleware user password
password=****
port that middleware listens to for the communication with DBSeer
listen_port=3555
path of the named pipe that dbseerroute uses to communicate with the middleware.
named_pipe=/tmp/dbseerroute
middleware reads the SQL performance log from this file.
dblog_path=/tmp/maxscale/perf.log
middleware writes OS/DBMS statistics of each server into separate files in this directory.
syslog_dir=/tmp/maxscale
the list of MySQL/MariaDB servers
servers=server1
server1 configuration start
[server1]
SQL credential necessary for middleware to gather the DBMS statistics (it uses "SHOW GLOBAL STATUS")
db_host=localhost
db_port=3306
db_user=root
db_pw=****
db_name=test
you must be able to run monitor script remotely at server1 using the following configuration.
ssh_user=mooh
monitor_dir=/home/mooh/dbseer/dbseer_middleware/rs-sysmon2/
monitor_script=monitor.sh
server1 configuration end
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.
from dbseer.
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.
from dbseer.
Related Issues (8)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dbseer.