protobufFilter is the most permissive way to single out binary protobuf traffic in a Fluxzy session. Pair it with capture, tagging or transport actions to build a focused workflow around gRPC and protobuf APIs without losing visibility on JSON or form encoded calls.
Use protobufFilter when you need a rule that fires for any exchange involving protobuf, regardless of which side carries the binary payload. It is the natural choice for general purpose dashboards or capture profiles dedicated to gRPC and protobuf APIs.
Typical situations:
application/x-protobuf or application/grpc Content-Type.The filter evaluates on the responseHeaderReceivedFromRemote scope, so it can inspect both sides of the exchange. Prefer protobufRequestFilter or protobufResponseFilter when you only care about one direction.
Send any request or response carrying protobuf to a separate capture so the binary payloads can be decoded later with a known .proto schema.
rules:
- filter:
typeKind: ProtobufFilter
actions:
- typeKind: CaptureSessionAction
Apply a single tag to every exchange that uses protobuf, useful in mixed JSON and gRPC environments where you want to slice the timeline by encoding.
rules:
- filter:
typeKind: ProtobufFilter
actions:
- typeKind: ApplyTagAction
tag:
value: protobuf
Protobuf APIs are usually served over HTTP/2. Use the filter to make sure the proxy never downgrades these exchanges to HTTP/1.1.
rules:
- filter:
typeKind: ProtobufFilter
actions:
- typeKind: ForceHttp2Action
Select exchanges having a protobuf request or response body. Filtering is made by inspecting value of Content-Type header on both request and response.
Evaluation scope defines the timing where this filter will be applied.
responseHeaderReceivedFromRemote This scope occurs the moment fluxzy has done parsing the response header.
protobufFilter
This filter has no specific characteristic
The following table describes the customizable properties available for this filter:
| Property | Type | Description | DefaultValue |
|---|---|---|---|
| inverted | boolean | Negate the filter result | false |
The following examples apply a comment to the filtered exchange
Select exchanges with protobuf request or response body.
rules:
- filter:
typeKind: ProtobufFilter
actions:
- typeKind: ApplyCommentAction
comment: filter was applied
Select exchanges without any protobuf body.
rules:
- filter:
typeKind: ProtobufFilter
actions:
- typeKind: ApplyCommentAction
comment: filter was applied
View definition of ProtobufFilter for .NET integration.
This filter has no related filter
The filter inspects the Content-Type header on both request and response. Common values include application/x-protobuf, application/protobuf and the gRPC family application/grpc.
No. isGrpcFilter checks specifically for the gRPC framing on top of HTTP/2. protobufFilter is broader, it matches any exchange that declares a protobuf media type on either side.
Yes. Either the request or the response carrying a protobuf Content-Type is enough to satisfy the filter.
Yes, set inverted: true to select every exchange that is not protobuf, then combine it with the action you want to apply to the remaining traffic.