Michael Ho Dan Hecht. I looked over the flags that show up in /varz and in the logs and it seems like all the Kudu gflags do show up as long as the Kudu file it belongs to is included by an Impala file. I did this by listing all the flags that show up in be/src/kudu/ and diff-ing against the flags that show up in (be/src/* - be/src/kudu/).
For eg: We see all the flags from kudu/rpc/messenger.cc since we include kudu/rpc/messenger.h in our Impala files. On the other hand, we don't see flags from kudu/util/spinlock_profiling.cc since kudu/util/spinlock_profiling.h isn't included in any of the Impala files.
I think that behavior is expected. So my take is that we can go ahead with Henry's above suggestion of marking the flags DEFINE_*_hidden(). I'll put out a patch for that shortly.