firebug / websocket-monitor Goto Github PK
View Code? Open in Web Editor NEWNot compatible with Firefox Quantum (57 and newer)
License: Other
Not compatible with Firefox Quantum (57 and newer)
License: Other
There should be two sizes displayed at the bottom of both views (table, chat)
Honza
It's currently confusing if the monitor runs on Firefox with no support for nsIWebSocketFrameService not available. There should be a simple warning that informs the user why it doesn't work.
Honza
STR :
Actual result : There is no scrollbar in the lateral panel.
Florent
Currently, there is an arrow that indicates the origin of a message (the client or the server). Here is a message coming from the server :
What about making an arrow going downward for a message coming from the server, and an arrow going upward for a message going to the latter ? That would be similar to what we can see with the download / upload icons.
What do you think?
Florent
Bug 1215092 - WebSocketFrameService should be used for WebSocket discovering
https://bugzilla.mozilla.org/show_bug.cgi?id=1215092
Honza
The user should be able to filter content of the WebSockets panel using a simple keyword.
Honza
The response side bar in the Net panel should display a link to the WebSockets panel in case HTTP WS upgrade request is selected.
Honza
If you go anywhere in the WebSocket panel (being the frames rows, or the details/payload side-panels), when you right-click on some selections, no context menu appears.
Florent
It should be possible to filter the list of frames according to the WS connection ID.
We want to utilize the filter-box and introduce a prefix #
that will be used to distinguish WS ID from playin text.
There should also be a popup window (just like in the Debugger panel) listing all options and teaching the user how to use it.
Honza
Depending on the socket ID i am monitoring, the side panel (details/payload) is not resizable (and it's default size is ridiculous) :
My guess is that it's because I have a "Connected to:" line that is just too long. It's the most noticeable difference between the two Socket IDs.
here is what I have when I select the other socket ID :
Like #21, it would be nice to fake an answer in order to test the behavior of the application on certain incoming messages.
Florent
In order to find new HTTP websockets upgrade requests, there should be a new filter.
Honza
I think it could be cool to add WAMP support, similarly to Socket.IO support and SockJS support.
WAMP is an open standard WebSocket subprotocol that provides messaging patterns of remote procedure calls and publish subscribe. WAMP has implementations in various languages and is becoming more popular.
I'd love to have support for this.
cc: @oberstet
It should be possible to pause and unpause the incoming stream of frames, so the user can focus on particular frame in the list without being distracted by constant panel content scrolling.
Honza
Connected To label not visible in Dark theme:
http://cl.ly/1h3f0d1h2c0k
Honza
Another feedback I've got says that it would be useful to filter the frame list and display only those that represents actual user messages. This would make easier to follow e.g. Socket IO traffic, which is constantly sending ping/pong frames.
Honza
The the list of WS connections in the filter should be cleared up after page reload.
Honza
All collected frames should be removed when the page is reloaded.
Honza
To make it easier for contributors we need a doc that describes how to get and run the extension.
Honza
With WebSocket Monitor 0.6.2 and Nightly 2016-06-06, I get the following:
TypeError: Rdp.registerTabActor(...) is undefined
and the panel does not load.
Using Firefox 45+ requires add-ons to be signed.
I know there is a way to counter that requirement, but any idea of if/when a signed version of this great add-on will be available?
Tks.
We could have a support for SockJS protocol
https://github.com/sockjs
Honza
HTTP requests that initiate WS connections (upgrade) should have a little icon that can be used (clicked) to navigate the user into the WebSockets panel.
Honza
Support up and down keys for keyboard navigation in the frame list. Both perspectives (list view, table view) must be supported.
Honza
Hi Jan. Nice work with this extension, keep up the good work!
It seems websocket-monitor has issues with some messages. My company produces many pages that stream market data, and the first thing the client does after getting upgraded to WS is send a subscribe string with the data that component would like to receive. In my tests, this client does not pick up these subscribe strings at all.
Steps to reproduce
In Chrome, the strings show in green as subscribe?...
. In websocket-monotor, they do not show, only the later response from server to this subscribe string shows up.
WS-monitor 0.4.1 Firefox 45.0a1 (2015-11-20) Fedora Linux
WebSocket Monitor should use proper icon for:
Should be the same icons supporting the following sizes:
16x16
32x32
Honza
This is feature request to make link strings be rendered as clickable links that open in new tabs. This mainly refers to the details side panel, but could also refer to links rendered in the inline previews (#5).
When we work with web sockets at work, we often send metadata relating to the connection in meta frames to the client. These meta frames sometimes contain URLs with more details about the client's subscription. It would be useful if these could be rendered as links, and not have to be copied and pasted.
I suspect this will require some work in the TreeView component - making it render an <a>
instead of a <span>
when it detects something that looks like a link, as well as using the tabs
API to open a new tab with this link.
What do you think?
We should integrate eslint with WebSocket Monitor.
One of the long term goals is integrating WebSocket Monitor directly into Firefox DevTools and so, we might want to use the existing .eslintrc [1] so, the code is compatible and future merge is easier.
Honza
[1] https://github.com/mozilla/gecko-dev/blob/fx-team/devtools/.eslintrc
hey,
first of all - the test page (http://janodvarko.cz/test/websockets/) works perfectly.
in a site I am developing, the websocket panel is just blank.
My socket is using wss (secure websocket), and I tried canceling it, but that did not resolve the issue.
My socket is also not using a standard port, may that be the issue?
I also thought that different domains in the client and the socket could be an issue, but the test page also has a different domain.
The user should see when WS connect and disconnect happened.
Honza
MQTT over Websocket is sent as binary data frames (OASIS and ISO standardised): http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html#_Toc398718127
It would be nice to decode and display these based on the MQTT packet types: http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html#_Toc398718018
Would this be a suitable protocol parser? https://www.npmjs.com/package/mqtt-packet
HI
I'm a user of your wonderful extension. But since the 2016-02-29, the pannel is empty.
I used mozregression to find the exact firefox version where it stopped working, and I came to this changeset: https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=5e0140b6d11821e0c2a2de25bc5431783f03380a&tochange=4972f77869de55becd41d6b726b25fca2f523232
I'm not able to help you with that, just wanted to let you know.
Good luck and thanks for your amazing work.
Below, the log of mozregression (http://mozilla.github.io/mozregression/):
(mozregression) twidi:~$ mozregression --good 2016-02-25
0:00.48 INFO: No 'bad' option specified, using 2016-03-01
0:06.01 INFO: Testing good and bad builds to ensure that they are really good and bad...
0:06.01 INFO: Downloading build from: https://archive.mozilla.org/pub/firefox/nightly/2016/02/2016-02-25-03-02-09-mozilla-central/firefox-47.0a1.en-US.linux-x86_64.tar.bz2
===== Downloaded 100% =====
0:51.46 INFO: Running mozilla-central build for 2016-02-25
1:03.49 INFO: Launching /tmp/user/1001/tmpmCI6Xj/firefox/firefox
1:03.49 INFO: application_buildid: 20160225030209
1:03.49 INFO: application_changeset: c1e0d1890cfee9d86c8d566b0490053f21e0afc6
1:03.49 INFO: application_name: Firefox
1:03.49 INFO: application_repository: https://hg.mozilla.org/mozilla-central
1:03.49 INFO: application_version: 47.0a1
Was this nightly build good, bad, or broken? (type 'good', 'bad', 'skip', 'retry' or 'exit' and press Enter): good
1:54.30 INFO: Using local file: /home/twidi/.mozilla/mozregression/persist/2016-03-01--mozilla-central--firefox-47.0a1.en-US.linux-x86_64.tar.bz2 (downloaded in background)
1:54.30 INFO: Running mozilla-central build for 2016-03-01
2:06.14 INFO: Launching /tmp/user/1001/tmp1w7fck/firefox/firefox
2:06.15 INFO: application_buildid: 20160301030237
2:06.15 INFO: application_changeset: 8ef94be995a453f5c464278c53478ba8c8554f81
2:06.15 INFO: application_name: Firefox
2:06.15 INFO: application_repository: https://hg.mozilla.org/mozilla-central
2:06.15 INFO: application_version: 47.0a1
Was this nightly build good, bad, or broken? (type 'good', 'bad', 'skip', 'retry' or 'exit' and press Enter): bad
3:55.22 INFO: Good and bad builds are correct. Let's continue the bisection.
3:55.22 INFO: Pushlog:
https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=c1e0d1890cfee9d86c8d566b0490053f21e0afc6&tochange=8ef94be995a453f5c464278c53478ba8c8554f81
3:55.22 INFO: Using local file: /home/twidi/.mozilla/mozregression/persist/2016-02-28--mozilla-central--firefox-47.0a1.en-US.linux-x86_64.tar.bz2 (downloaded in background)
3:55.22 INFO: Running mozilla-central build for 2016-02-28
4:07.66 INFO: Launching /tmp/user/1001/tmpDzChNr/firefox/firefox
4:07.66 INFO: application_buildid: 20160228030239
4:07.66 INFO: application_changeset: 5e0140b6d11821e0c2a2de25bc5431783f03380a
4:07.66 INFO: application_name: Firefox
4:07.66 INFO: application_repository: https://hg.mozilla.org/mozilla-central
4:07.66 INFO: application_version: 47.0a1
Was this nightly build good, bad, or broken? (type 'good', 'bad', 'skip', 'retry' or 'exit' and press Enter): good
5:50.12 INFO: Narrowed nightly regression window from [2016-02-25, 2016-03-01] (5 days) to [2016-02-28, 2016-03-01] (2 days) (~1 steps left)
5:50.12 INFO: Pushlog:
https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=5e0140b6d11821e0c2a2de25bc5431783f03380a&tochange=8ef94be995a453f5c464278c53478ba8c8554f81
5:50.12 INFO: Using local file: /home/twidi/.mozilla/mozregression/persist/2016-02-29--mozilla-central--firefox-47.0a1.en-US.linux-x86_64.tar.bz2 (downloaded in background)
5:50.12 INFO: Running mozilla-central build for 2016-02-29
6:01.85 INFO: Launching /tmp/user/1001/tmpTGQ3kz/firefox/firefox
6:01.86 INFO: application_buildid: 20160229030448
6:01.86 INFO: application_changeset: 9da51cb4974e03cdd8fa45a34086fe1033abfeaf
6:01.86 INFO: application_name: Firefox
6:01.86 INFO: application_repository: https://hg.mozilla.org/mozilla-central
6:01.86 INFO: application_version: 47.0a1
Was this nightly build good, bad, or broken? (type 'good', 'bad', 'skip', 'retry', 'back' or 'exit' and press Enter): bad
7:51.39 INFO: Narrowed nightly regression window from [2016-02-28, 2016-03-01] (2 days) to [2016-02-28, 2016-02-29] (1 days) (~0 steps left)
7:51.39 INFO: Got as far as we can go bisecting nightlies...
7:51.39 INFO: Last good revision: 5e0140b6d11821e0c2a2de25bc5431783f03380a (2016-02-28)
7:51.39 INFO: First bad revision: 9da51cb4974e03cdd8fa45a34086fe1033abfeaf (2016-02-29)
7:51.39 INFO: Pushlog:
https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=5e0140b6d11821e0c2a2de25bc5431783f03380a&tochange=9da51cb4974e03cdd8fa45a34086fe1033abfeaf
7:51.39 INFO: Switching bisection method to taskcluster
7:51.39 INFO: Getting mozilla-central builds between 5e0140b6d11821e0c2a2de25bc5431783f03380a and 9da51cb4974e03cdd8fa45a34086fe1033abfeaf
7:58.68 INFO: Pushlog:
https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=5e0140b6d11821e0c2a2de25bc5431783f03380a&tochange=9da51cb4974e03cdd8fa45a34086fe1033abfeaf
7:58.68 INFO: Downloading build from: https://queue.taskcluster.net/v1/task/YlN4fQ56SQShul-Wnsjzzg/runs/0/artifacts/public%2Fbuild%2Ffirefox-47.0a1.en-US.linux-x86_64.tar.bz2
===== Downloaded 100% =====
8:39.87 INFO: Running mozilla-central build built on 2016-02-29 11:31:48.462000, revision 4972f778
8:52.13 INFO: Launching /tmp/user/1001/tmpcpSTS_/firefox/firefox
8:52.14 INFO: application_buildid: 20160229021614
8:52.14 INFO: application_changeset: 4972f77869de55becd41d6b726b25fca2f523232
8:52.14 INFO: application_name: Firefox
8:52.14 INFO: application_repository: https://hg.mozilla.org/mozilla-central
8:52.14 INFO: application_version: 47.0a1
Was this inbound build good, bad, or broken? (type 'good', 'bad', 'skip', 'retry' or 'exit' and press Enter): bad
10:03.72 INFO: Narrowed inbound regression window from [5e0140b6, 9da51cb4] (3 revisions) to [5e0140b6, 4972f778] (2 revisions) (~1 steps left)
10:03.72 INFO: Oh noes, no (more) inbound revisions :(
10:03.72 INFO: Last good revision: 5e0140b6d11821e0c2a2de25bc5431783f03380a
10:03.72 INFO: First bad revision: 4972f77869de55becd41d6b726b25fca2f523232
10:03.72 INFO: Pushlog:
https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=5e0140b6d11821e0c2a2de25bc5431783f03380a&tochange=4972f77869de55becd41d6b726b25fca2f523232
We should design a new API for extensions that implement new protocol parsers.
Honza
Similarly to issue #18, we could add support for "raw" JSON.
Florent
Like in the Network panel, the "modify and resend" feature would be quite useful in order to interact with the server directly (and to debug it). The feature would be available for the outgoing messages only.
Florent
We want to sign future released XPIs using jpm sign
.
Note for me:
https://groups.google.com/forum/#!topic/mozilla.dev.amo/OZz62cJwWCc
Honza
The list of frames should display summary info at the bottom
Honza
The other option how to display a list of frames is using "chat" kind of UI. Just like the RDP Inspector does.
See a screenshot here:
https://github.com/firebug/rdp-inspector/wiki
Switching between tabular and chat view could be done through an option displayed in the tab-menu, but it's only available in Firebug theme.
Honza
When following constant stream of frames it's useful to have the panel always scrolled at the bottom to see the last incoming packet.
Honza
Phase II: now we have decoded WAMP messages, we would like to see correlated messages together. We have some messages that are actually "request-response", some of those include
I think it can be cool to display this somehow similarly to browser HTTP request/response.
Elad
It could be useful if the inline payload preview shows only actual user data. So, in case of Socket IO it would show only the 'data' field. I believe (according to a feedback I've got) that dev folks are mostly interested in the real data they are sending over the wire (not in the garbage appended by Socket IO)
This would require specific support for every protocol. But perhaps we can start with Socket IO and see how it works...
Thoughts?
Honza
If the payload data can be parsed they could be displayed in a form of an expandable tree inline within the frame table.
Honza
The net panel layout is broken, see the following screenshot:
http://cl.ly/0r1s162C1M2O
Honza
Introduce a limit for number of displayed frames. If the limit is reached the oldest frame should be removed.
Honza
In the message "Ã�ok Yakında Buradayız..." must be seen as "Çok Yakında Buradayız"
Make sure the clear also side panels when the 'Clear' button is pressed.
Honza
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.