[GH-ISSUE #1363] Little Help to find which protobuf message type applied on protobuf viewer? #1355

Closed
opened 2026-03-03 19:50:46 +03:00 by kerem · 7 comments
Owner

Originally created by @jjmean2 on GitHub (Sep 15, 2022).
Original GitHub issue: https://github.com/ProxymanApp/Proxyman/issues/1363

Originally assigned to: @NghiaTranUIT on GitHub.

Description

I have lots of Protobuf rules to parse requests/responses of my server API.
But sometimes I write a matching rule incorrectly, and that incorrectly written rule matches with an unwanted API url.

In case I meet incorrectly parsed data in protobuf viewer for some URL request, I need to find which rule matches that URL, and edit it.
But it's not easy to find matching rule from rules list in Protobuf settings.

Is there a feature to find the matched rule used for parsing protobuf data?
Some kind of filtering feature in Protobuf settings or button for jumping to matched rule editor from Protobuf viewer seems good.

Originally created by @jjmean2 on GitHub (Sep 15, 2022). Original GitHub issue: https://github.com/ProxymanApp/Proxyman/issues/1363 Originally assigned to: @NghiaTranUIT on GitHub. ## Description I have lots of Protobuf rules to parse requests/responses of my server API. But sometimes I write a matching rule incorrectly, and that incorrectly written rule matches with an unwanted API url. In case I meet incorrectly parsed data in protobuf viewer for some URL request, I need to find which rule matches that URL, and edit it. But it's not easy to find matching rule from rules list in Protobuf settings. Is there a feature to find the matched rule used for parsing protobuf data? Some kind of filtering feature in Protobuf settings or button for jumping to matched rule editor from Protobuf viewer seems good.
kerem 2026-03-03 19:50:46 +03:00
Author
Owner

@NghiaTranUIT commented on GitHub (Sep 21, 2022):

I might add the Protobuf Message Name to the Summary Tab 👍

<!-- gh-comment-id:1253737241 --> @NghiaTranUIT commented on GitHub (Sep 21, 2022): I might add the Protobuf Message Name to the Summary Tab 👍
Author
Owner

@jjmean2 commented on GitHub (Sep 22, 2022):

Thanks to your reply!

I think it's important that it brings me to the existing matching rule editor for modifying incorrectly matching rule.

Let me explain my situation by an example.

I have an API with url like https://api.example.com/v1/category/12345 that fetches sample.Category message.

So I create regex rule of https://api.example.com/v1/category/.* using sample.Category message.

Then I get a new API with url likehttps://api.example.com/v1/category/12345/product/9876 that fetches sample.Product message. This url matches previous rule using sample.Category message. So when I capture this new API traffic by Proxyman, protobuf viewer shows incorrectly decoded data (using sample.Category message instead of sample.Product).

In this case, I want to modify existing rule more precisely such as https://api.example.com/v1/category/[^/]+. So I need to open editor for existing rule. But I have more than 100 of protobuf rule items, so to find the matching rule, I should check each rule pattern one by one.

So it is very helpful if there is a button or menu that opens the editor of currently applied protobuf rule directly from recorded request/response viewer, or similar feature.

If Proxyman already has an equivalent feature, please let me know.

Thanks for reading.

<!-- gh-comment-id:1254360571 --> @jjmean2 commented on GitHub (Sep 22, 2022): Thanks to your reply! I think it's important that it brings me to the existing matching rule editor for modifying incorrectly matching rule. Let me explain my situation by an example. I have an API with url like `https://api.example.com/v1/category/12345` that fetches sample.Category message. So I create regex rule of `https://api.example.com/v1/category/.*` using sample.Category message. Then I get a new API with url like`https://api.example.com/v1/category/12345/product/9876` that fetches sample.Product message. This url matches previous rule using sample.Category message. So when I capture this new API traffic by Proxyman, protobuf viewer shows incorrectly decoded data (using sample.Category message instead of sample.Product). In this case, I want to modify existing rule more precisely such as `https://api.example.com/v1/category/[^/]+`. So I need to open editor for existing rule. But I have more than 100 of protobuf rule items, so to find the matching rule, I should check each rule pattern one by one. So it is very helpful if there is a button or menu that opens the editor of currently applied protobuf rule directly from recorded request/response viewer, or similar feature. If Proxyman already has an equivalent feature, please let me know. Thanks for reading.
Author
Owner

@NghiaTranUIT commented on GitHub (Sep 22, 2022):

Thanks. If the request is matched with any debugging tool, you can find it in Summary Tab -> Debugging Tool.

Screen_Shot_2022-09-22_at_08_49_16

Look like it doesn't display the Protobuf. I;m going to fix it now 👍

<!-- gh-comment-id:1254410240 --> @NghiaTranUIT commented on GitHub (Sep 22, 2022): Thanks. If the request is matched with any debugging tool, you can find it in Summary Tab -> Debugging Tool. ![Screen_Shot_2022-09-22_at_08_49_16](https://user-images.githubusercontent.com/5878421/191640658-9468462e-2e76-4b48-893c-fd5873a80c6b.jpg) Look like it doesn't display the Protobuf. I;m going to fix it now 👍
Author
Owner

@jjmean2 commented on GitHub (Sep 22, 2022):

Wow, thank you for the information. I didn't know that there is Debugging tool info in the Summary tab.

But I have one concern.
Although I will be able to get matching rule information from the panel, I still need to find the rule from the list of "Protobuf settings" to modify that rule.

스크린샷 2022-09-22 오전 11 20 37 복사본

(I need to find the rule from this list, and there is no search or filter feature in this list.)

For example, if the panel says that Matching Rule is Method: GET, Regex: https://api.example.com/v1/category/.*, I need to find which one is the rule that the panel says, from the list to open the editor and modify it.

스크린샷 2022-09-22 오전 11 30 21

(I want to open this editor for the existing matching rule)

For now, clicking "Protobuf..." menu from the following screenshot opens a new rule editor, even if there is already matched rule.

스크린샷 2022-09-22 오전 11 34 07

(This opens Protobuf rule editor creating a new rule, not the editor modifying the existing rule.)

So, I suggest that clicking that menu opens an existing matched rule editor if exists, and lets the user modify the rule pattern instead of creating a new rule.

Thanks for your help and reply!

<!-- gh-comment-id:1254442573 --> @jjmean2 commented on GitHub (Sep 22, 2022): Wow, thank you for the information. I didn't know that there is Debugging tool info in the Summary tab. But I have one concern. Although I will be able to get matching rule information from the panel, I still need to find the rule from the list of "Protobuf settings" to modify that rule. <img width="910" alt="스크린샷 2022-09-22 오전 11 20 37 복사본" src="https://user-images.githubusercontent.com/11574475/191644538-79f6b994-8bdc-4ca7-8a26-8d55448c828d.png"> (I need to find the rule from this list, and there is no search or filter feature in this list.) For example, if the panel says that Matching Rule is `Method: GET, Regex: https://api.example.com/v1/category/.*`, I need to find which one is the rule that the panel says, from the list to open the editor and modify it. ![스크린샷 2022-09-22 오전 11 30 21](https://user-images.githubusercontent.com/11574475/191645207-a1f60a8a-7387-4625-993d-63fbc0cdbb66.png) (I want to open this editor for the existing matching rule) For now, clicking "Protobuf..." menu from the following screenshot opens a new rule editor, even if there is already matched rule. ![스크린샷 2022-09-22 오전 11 34 07](https://user-images.githubusercontent.com/11574475/191645546-bd630aa5-1078-4c9b-905e-98985d045828.png) (This opens Protobuf rule editor creating a new rule, not the editor modifying the existing rule.) So, I suggest that clicking that menu opens an existing matched rule editor if exists, and lets the user modify the rule pattern instead of creating a new rule. Thanks for your help and reply!
Author
Owner

@NghiaTranUIT commented on GitHub (Sep 22, 2022):

You can check out this build: https://proxyman.s3.us-east-2.amazonaws.com/beta/Proxyman_3.10.0_Show_matched_rule_in_Summary_Tab.dmg

Please note that you have to click on the Body Tab firstly, to load the Protobuf Rule -> Then open the Summary Tab.

The Show button will open the Protobuf List -> Auto select the matched rule.

Screen_Shot_2022-09-22_at_14_46_31

<!-- gh-comment-id:1254676958 --> @NghiaTranUIT commented on GitHub (Sep 22, 2022): You can check out this build: https://proxyman.s3.us-east-2.amazonaws.com/beta/Proxyman_3.10.0_Show_matched_rule_in_Summary_Tab.dmg Please note that you have to click on the Body Tab firstly, to load the Protobuf Rule -> Then open the Summary Tab. The Show button will open the Protobuf List -> Auto select the matched rule. ![Screen_Shot_2022-09-22_at_14_46_31](https://user-images.githubusercontent.com/5878421/191693239-ad6c428e-4dc7-4e14-b357-fc9b956ee61d.jpg)
Author
Owner

@jjmean2 commented on GitHub (Sep 22, 2022):

Oh, Thanks, Great! This is exactly what I need 👍

I really appreciate it.

I just have a question. Is there any order which debugging tool will show in Summary panel when multiple debugging tool applied? (e.g. In case that all of Protobuf, Map Local, Breakpoint applied into a single request)

<!-- gh-comment-id:1254734401 --> @jjmean2 commented on GitHub (Sep 22, 2022): Oh, Thanks, Great! This is exactly what I need 👍 I really appreciate it. I just have a question. Is there any order which debugging tool will show in Summary panel when multiple debugging tool applied? (e.g. In case that all of Protobuf, Map Local, Breakpoint applied into a single request)
Author
Owner

@NghiaTranUIT commented on GitHub (Sep 22, 2022):

Currently, it only displayed the last matched tool even though there are multiple tools applied. It's a shortcoming, we will support it soon 👍

<!-- gh-comment-id:1254878062 --> @NghiaTranUIT commented on GitHub (Sep 22, 2022): Currently, it only displayed the last matched tool even though there are multiple tools applied. It's a shortcoming, we will support it soon 👍
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/Proxyman#1355
No description provided.