Would like to know more details about the binary log.

210 views
Skip to first unread message

Xiaofeng Han

unread,
Jul 16, 2021, 12:08:51 AM7/16/21
to grpc.io
Hello grpc-io group,

This is Xiaofeng from Roblox, I am very interested in using the grpc binary logging to build a debugging tool for all the micro-services at Roblox. So far I only find this grfc online. I have the following questions and would greatly appreciate it if someone could help. 

1. Is the binary log fully implemented for all major programming languages, like C#, C++, go, python, etc?

2. If yes, how can we customized it to support
a. conditional logging, e..g, random sampling, or when the rpc request contains certain values.
b. redirect the logging to other collectors instead of a local file.

Thanks,
Xiaofeng

Xiaofeng Han

unread,
Jul 19, 2021, 1:02:31 PM7/19/21
to grpc.io
friendly ping, thanks.

Eric Anderson

unread,
Aug 2, 2021, 2:26:54 PM8/2/21
to Xiaofeng Han, grpc.io
I'll let someone else explain more of the state for C-based languages.

As I understand it, binary logging isn't supported in the C-based languages which includes C#, C++, Python, and others. grpc-dotnet does not support binary logging. grpc-go's implementation is in grpc/binarylog. grpc-java's is at io.grpc.protobuf.services.BinaryLogs. Should be clear in both cases how to write to a different collector. Java doesn't expose the concrete protobuf type to the sink, so filtering will be harder than in Go. In general, filtering based on RPC request will be hard because 1) the message is untyped and serialized, so you'll need some custom logic to decode it and 2) the message may be truncated which can trivially fail deserialization even if the field you want wasn't truncated.

--
You received this message because you are subscribed to the Google Groups "grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email to grpc-io+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/fc398e75-5d29-4a93-808d-9c50a7c145c2n%40googlegroups.com.

yas...@google.com

unread,
Sep 23, 2021, 1:42:11 PM9/23/21
to grpc.io
That is correct. Binary logging is not yet supported in Core based languages.
Reply all
Reply to author
Forward
0 new messages