MQWeb - A REST API server for Websphere MQ
MQWeb is a HTTP server that can be used to get information from WebSphere MQ.
All documentation is available on https://fbraem.github.io/mqweb/.
MQWeb - REST API - Administrating WebSphere MQ with a browser
Home Page: https://fbraem.github.io/mqweb/
License: MIT License
MQWeb - A REST API server for Websphere MQ
MQWeb is a HTTP server that can be used to get information from WebSphere MQ.
All documentation is available on https://fbraem.github.io/mqweb/.
Sorry, I cannot find any place to ask questions.
What's the supported MQ versions?
mqweb/MQ/src/CommandServer.cpp
Line 59 in cd74d2a
I learned recently that by default the command server sends all replies with unlimited expiry unless you set the MQRO_PASS_DISCARD_AND_EXPIRY
reporting option. If you set MQRO_PASS_DISCARD_AND_EXPIRY
then the command server will pass the remaining expiry from the request message to the reply. In addition if you have also set MQRO_DISCARD_MSG
it will pass this on as well preventing it from going to the DLQ, even if only for the remaining expiry.
Adding something like this will do the trick to add those:
command->message()->setReport(MQRO_PASS_DISCARD_AND_EXPIRY | MQRO_DISCARD_MSG);
Hope this helps in some way. I stumbled on your project off a Blog post you commented on over at Capitalware. Looks very nice.
When a queuemanager is stopped or in error and a 2009 is returned, the queuemanager connection must be removed from the pool. When the queuemanager is back available and the connection is still in the pool, it is possible that it reuses the wrong handle.
Hey fbraem,
I'm pretty new to all this but i'm sure you are able to provide us (me and my collegues) with the right questions to understand the content of the following "enhancement-request".
Would it be a good idea to collect (MQGET) the native WSMQ-"audit/error/..."-events that are generated on WSMQ-backends in MQWEB. (as you are probably well aware those messages have a pcf-structure)
What is your idea as an expert on the following usecases?
e.g.:
In this proposal MQWEB would destructively read the messages on the connected WSMQ-nodes on the configured audit-event-queues. ("command-events" and "config-events")
If supporting other "event-consumers of the same audit/error-events" is a requirement, it will be possible to archieve this via PUB/SUB-setup on the MQ-queuemanager. The suggested mechanism of MQGET may ensure that audit-events can be read in a swift and performing manner (mqget with wait-interval) and the "MQGET by MQWEB" does not need to result in a loss of audit/error-information.
It must be possible to set user/password when connecting to a queuemanager using a client channel.
Hello,
Any plans to support ability to push messages to the queue?
thx
Hello Franky,
I'm having issue using the Master version + poco-1.7.8p2 on Windows 7 64, against MQ 7.5. MQ error 2085.
The client is the Python scripts in the Samples folder. The connection seems to be well established.
When I look at the description of the error 2085, it doesn't make sense to my setting because I don't have cluster.
Log:
2017-05-29 17:31:25 CANL-BN75S32 9684-4 T *** api controller: qmstatus
2017-05-29 17:31:25 CANL-BN75S32 9684-4 I *** Connection information: { "channel" : "SYSTEM.ADMIN.SVRCONN", "connection" : "10.106.123.100(1414)" }
2017-05-29 17:31:25 CANL-BN75S32 9684-4 T *** MQ4 - MQCONNX : CC=0 : RC=0
2017-05-29 17:31:26 CANL-BN75S32 9684-4 T *** MQOPEN : CC=0 : RC=0
2017-05-29 17:31:26 CANL-BN75S32 9684-4 T *** MQINQ : CC=0 : RC=0
2017-05-29 17:31:26 CANL-BN75S32 9684-4 T *** MQCLOSE : CC=0 : RC=0
2017-05-29 17:31:26 CANL-BN75S32 9684-4 T *** SYSTEM.ADMIN.COMMAND.QUEUE - MQOPEN : CC=0 : RC=0
2017-05-29 17:31:26 CANL-BN75S32 9684-4 T *** MQWEB.REPLY.Q01 - MQOPEN : CC=2 : RC=2085
2017-05-29 17:31:26 CANL-BN75S32 9684-4 T *** MQCLOSE : CC=0 : RC=0
2017-05-29 17:31:26 CANL-BN75S32 9684-4 T *** Trying to open SQLite database C:\vms\MQ-DOCS\mqweb-develop\bin\Debug\mqweb.db to load dictionary Reason
2017-05-29 17:31:26 CANL-BN75S32 9684-4 E *** SQL Statement invalid: SQL error or missing database: no such table: texts
Do I, may be, miss some thing in my properties file? (attached).
Tips to resolve the issue are really appreciated.
Thanks,
Victor
Create a dashboard as homepage for a queuemanager:
Overview queues which contains messages
View events
View DLQ messages
View channel status
View active connections
...
I am able to select queue which has 10 message and it shows Depth:10 / 5,000 where 10 is hyperlink. When I click on hyperlink, it takes me to Limits pages. I tried various values for Limit Messages and Teaser Length e.g set limits to 1, 19, *, 2 , removed teaser length
but nothing is happening.
See the tracelog details when I click on filter link for limits:
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MYQMGR - MQCONNX : CC=0 : RC=0
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQOPEN : CC=0 : RC=0
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQINQ : CC=0 : RC=0
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQCLOSE : CC=0 : RC=0
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** SYSTEM.ADMIN.COMMAND.QUEUE - MQOPEN : CC=0 : RC=0
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** AMQ.535A84DE20024E06 - MQOPEN : CC=0 : RC=0
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MY.QUEUE - MQOPEN : CC=0 : RC=0
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQGET : CC=1 : RC=2079
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQGET : CC=1 : RC=2079
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQGET : CC=1 : RC=2079
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQGET : CC=1 : RC=2079
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQGET : CC=1 : RC=2079
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQGET : CC=1 : RC=2079
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQGET : CC=1 : RC=2079
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQGET : CC=1 : RC=2079
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQGET : CC=1 : RC=2079
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQGET : CC=1 : RC=2079
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQGET : CC=2 : RC=2033
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQCLOSE : CC=0 : RC=0
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQCLOSE : CC=0 : RC=0
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQCLOSE : CC=0 : RC=0
2014-04-27 03:24:03 localhost.localdomain 4806-2 T *** MQDISC : CC=0 : RC=0
When no connection id is passed, MQWeb uses MQBACF_GENERIC_CONNECTION_ID and an empty Poco::Buffer. This results in an assertion 0 < buffer.size() ... A buffer with length MQ_CONNECTION_ID_LENGTH must be used which is initialized with 0 ...
show ascii is working with old static (mqweb 0.10)
show ebcdic not working, data empty
Hello,
I am successfully able to connect to my local instance of queue manager. On dashboard, I can see both of my queues listed with number of messages but when I click on any of these queues, I get error page with following error.
Object: index
Function: MQCONNX
Code: ERROR
Reason: 2058 - MQRC_Q_MGR_NAME_ERROR
Similarly I get errors when I click on 'List queues' and 'List Channels' under 'Our services' but if I click on top level tabs (home, queues, channels, listeners), I am able to see all the queues based on filter criteria.
Thanks
Joshi
With 0.0.9, i have following message on "Channel Status" :
Object: AMQ.CD011D0BD0D1FE06 QT10 AMQ.*
Function: MQGET
Code: WARNING
Reason: 2120 - MQRC_TRUNCATED
It's possible to remove the limit of 16k message ?
0.0.9
Hello,
Thanks for MQWeb project. Does MQWeb support connection over SSL? If not any plan to add support?
Thanks,
Joshi
Great idea from Capitalware Inc: http://www.capitalware.com/rl_blog/?p=4738
With MQGMO_PROPERTIES_FORCE_MQRFH2, properties aren't converted. Use MQINQMP instead.
I am using Redhat EL6 64 bit and when trying to make the mqweb using command ' make' it throws the below error.
Can you please help me to fix this.
QueueMapper.cpp
Linking MQWeb
/usr/bin/ld: skipping incompatible /usr/local/include/../lib/libPocoNetd.so when searching for -lPocoNetd
/usr/bin/ld: skipping incompatible /usr/local/include/../lib/libPocoNetd.a when searching for -lPocoNetd
/usr/bin/ld: skipping incompatible /usr/local/lib64/../lib/libPocoNetd.so when searching for -lPocoNetd
/usr/bin/ld: skipping incompatible /usr/local/lib64/../lib/libPocoNetd.a when searching for -lPocoNetd
/usr/bin/ld: skipping incompatible /usr/local/lib/../lib/libPocoNetd.so when searching for -lPocoNetd
/usr/bin/ld: skipping incompatible /usr/local/lib/../lib/libPocoNetd.a when searching for -lPocoNetd
/usr/bin/ld: skipping incompatible /usr/local/lib/libPocoNetd.so when searching for -lPocoNetd
/usr/bin/ld: skipping incompatible /usr/local/lib/libPocoNetd.a when searching for -lPocoNetd
/usr/bin/ld: skipping incompatible /usr/local/lib/libPocoNetd.so when searching for -lPocoNetd
/usr/bin/ld: skipping incompatible /usr/local/lib/libPocoNetd.a when searching for -lPocoNetd
/usr/bin/ld: cannot find -lPocoNetd
collect2: ld returned 1 exit status
make[1]: *** [../../bin/Debug/mqwebd] Error 1
make: *** [MQWeb] Error 2
[root@server1 gmake]#
Viewing properties, dlq information, rfh2, event information, ...
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.