diff --git a/services/src/generated/main/java/io/grpc/binarylog/BinaryLogProto.java b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/BinaryLogProto.java similarity index 68% rename from services/src/generated/main/java/io/grpc/binarylog/BinaryLogProto.java rename to services/src/generated/main/java/io/grpc/binarylog/v1alpha/BinaryLogProto.java index 633b6234e1..5b6a5e67e2 100644 --- a/services/src/generated/main/java/io/grpc/binarylog/BinaryLogProto.java +++ b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/BinaryLogProto.java @@ -1,7 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: io/grpc/binarylog.proto +// source: grpc/binlog/v1alpha/binarylog.proto -package io.grpc.binarylog; +package io.grpc.binarylog.v1alpha; public final class BinaryLogProto { private BinaryLogProto() {} @@ -53,39 +53,39 @@ public final class BinaryLogProto { descriptor; static { java.lang.String[] descriptorData = { - "\n\027io/grpc/binarylog.proto\022\026grpc.binarylo" + - "g.v1alpha\032\036google/protobuf/duration.prot" + - "o\"\364\005\n\014GrpcLogEntry\0227\n\004type\030\001 \001(\0162).grpc." + - "binarylog.v1alpha.GrpcLogEntry.Type\022;\n\006l" + - "ogger\030\002 \001(\0162+.grpc.binarylog.v1alpha.Grp" + - "cLogEntry.Logger\0220\n\007call_id\030\003 \001(\0132\037.grpc" + - ".binarylog.v1alpha.Uint128\0224\n\010metadata\030\004" + - " \001(\0132 .grpc.binarylog.v1alpha.MetadataH\000" + - "\0222\n\007message\030\005 \001(\0132\037.grpc.binarylog.v1alp" + - "ha.MessageH\000\022*\n\004peer\030\006 \001(\0132\034.grpc.binary" + - "log.v1alpha.Peer\022\021\n\ttruncated\030\007 \001(\010\022\023\n\013m" + - "ethod_name\030\010 \001(\t\022\023\n\013status_code\030\t \001(\r\022\026\n" + - "\016status_message\030\n \001(\t\022\026\n\016status_details\030" + - "\013 \001(\014\022*\n\007timeout\030\014 \001(\0132\031.google.protobuf" + - ".Duration\022\037\n\027sequence_id_within_call\030\r \001" + - "(\r\"\252\001\n\004Type\022\020\n\014UNKNOWN_TYPE\020\000\022\031\n\025SEND_IN" + - "ITIAL_METADATA\020\001\022\032\n\026SEND_TRAILING_METADA" + - "TA\020\002\022\020\n\014SEND_MESSAGE\020\003\022\031\n\025RECV_INITIAL_M" + - "ETADATA\020\004\022\032\n\026RECV_TRAILING_METADATA\020\005\022\020\n" + - "\014RECV_MESSAGE\020\006\"4\n\006Logger\022\022\n\016UNKNOWN_LOG" + - "GER\020\000\022\n\n\006CLIENT\020\001\022\n\n\006SERVER\020\002B\t\n\007payload" + - "\"6\n\007Message\022\r\n\005flags\030\001 \001(\r\022\016\n\006length\030\002 \001" + - "(\r\022\014\n\004data\030\003 \001(\014\"@\n\010Metadata\0224\n\005entry\030\001 " + - "\003(\0132%.grpc.binarylog.v1alpha.MetadataEnt" + - "ry\"+\n\rMetadataEntry\022\013\n\003key\030\001 \001(\014\022\r\n\005valu" + - "e\030\002 \001(\014\"\277\001\n\004Peer\0228\n\tpeer_type\030\001 \001(\0162%.gr" + - "pc.binarylog.v1alpha.Peer.PeerType\022\014\n\004pe" + - "er\030\002 \001(\014\022\017\n\007address\030\003 \001(\t\022\017\n\007ip_port\030\004 \001" + - "(\r\"M\n\010PeerType\022\024\n\020UNKNOWN_PEERTYPE\020\000\022\r\n\t" + - "PEER_IPV4\020\001\022\r\n\tPEER_IPV6\020\002\022\r\n\tPEER_UNIX\020" + - "\003\"$\n\007Uint128\022\014\n\004high\030\001 \001(\006\022\013\n\003low\030\002 \001(\006B" + - "%\n\021io.grpc.binarylogB\016BinaryLogProtoP\001b\006" + - "proto3" + "\n#grpc/binlog/v1alpha/binarylog.proto\022\026g" + + "rpc.binarylog.v1alpha\032\036google/protobuf/d" + + "uration.proto\"\364\005\n\014GrpcLogEntry\0227\n\004type\030\001" + + " \001(\0162).grpc.binarylog.v1alpha.GrpcLogEnt" + + "ry.Type\022;\n\006logger\030\002 \001(\0162+.grpc.binarylog" + + ".v1alpha.GrpcLogEntry.Logger\0220\n\007call_id\030" + + "\003 \001(\0132\037.grpc.binarylog.v1alpha.Uint128\0224" + + "\n\010metadata\030\004 \001(\0132 .grpc.binarylog.v1alph" + + "a.MetadataH\000\0222\n\007message\030\005 \001(\0132\037.grpc.bin" + + "arylog.v1alpha.MessageH\000\022*\n\004peer\030\006 \001(\0132\034" + + ".grpc.binarylog.v1alpha.Peer\022\021\n\ttruncate" + + "d\030\007 \001(\010\022\023\n\013method_name\030\010 \001(\t\022\023\n\013status_c" + + "ode\030\t \001(\r\022\026\n\016status_message\030\n \001(\t\022\026\n\016sta" + + "tus_details\030\013 \001(\014\022*\n\007timeout\030\014 \001(\0132\031.goo" + + "gle.protobuf.Duration\022\037\n\027sequence_id_wit" + + "hin_call\030\r \001(\r\"\252\001\n\004Type\022\020\n\014UNKNOWN_TYPE\020" + + "\000\022\031\n\025SEND_INITIAL_METADATA\020\001\022\032\n\026SEND_TRA" + + "ILING_METADATA\020\002\022\020\n\014SEND_MESSAGE\020\003\022\031\n\025RE" + + "CV_INITIAL_METADATA\020\004\022\032\n\026RECV_TRAILING_M" + + "ETADATA\020\005\022\020\n\014RECV_MESSAGE\020\006\"4\n\006Logger\022\022\n" + + "\016UNKNOWN_LOGGER\020\000\022\n\n\006CLIENT\020\001\022\n\n\006SERVER\020" + + "\002B\t\n\007payload\"6\n\007Message\022\r\n\005flags\030\001 \001(\r\022\016" + + "\n\006length\030\002 \001(\r\022\014\n\004data\030\003 \001(\014\"@\n\010Metadata" + + "\0224\n\005entry\030\001 \003(\0132%.grpc.binarylog.v1alpha" + + ".MetadataEntry\"+\n\rMetadataEntry\022\013\n\003key\030\001" + + " \001(\014\022\r\n\005value\030\002 \001(\014\"\277\001\n\004Peer\0228\n\tpeer_typ" + + "e\030\001 \001(\0162%.grpc.binarylog.v1alpha.Peer.Pe" + + "erType\022\014\n\004peer\030\002 \001(\014\022\017\n\007address\030\003 \001(\t\022\017\n" + + "\007ip_port\030\004 \001(\r\"M\n\010PeerType\022\024\n\020UNKNOWN_PE" + + "ERTYPE\020\000\022\r\n\tPEER_IPV4\020\001\022\r\n\tPEER_IPV6\020\002\022\r" + + "\n\tPEER_UNIX\020\003\"$\n\007Uint128\022\014\n\004high\030\001 \001(\006\022\013" + + "\n\003low\030\002 \001(\006B-\n\031io.grpc.binarylog.v1alpha" + + "B\016BinaryLogProtoP\001b\006proto3" }; com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { diff --git a/services/src/generated/main/java/io/grpc/binarylog/GrpcLogEntry.java b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/GrpcLogEntry.java similarity index 84% rename from services/src/generated/main/java/io/grpc/binarylog/GrpcLogEntry.java rename to services/src/generated/main/java/io/grpc/binarylog/v1alpha/GrpcLogEntry.java index 4a2cfcc874..be928ad9ac 100644 --- a/services/src/generated/main/java/io/grpc/binarylog/GrpcLogEntry.java +++ b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/GrpcLogEntry.java @@ -1,7 +1,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! -// source: io/grpc/binarylog.proto +// source: grpc/binlog/v1alpha/binarylog.proto -package io.grpc.binarylog; +package io.grpc.binarylog.v1alpha; /** *
@@ -74,11 +74,11 @@ private static final long serialVersionUID = 0L;
             break;
           }
           case 26: {
-            io.grpc.binarylog.Uint128.Builder subBuilder = null;
+            io.grpc.binarylog.v1alpha.Uint128.Builder subBuilder = null;
             if (callId_ != null) {
               subBuilder = callId_.toBuilder();
             }
-            callId_ = input.readMessage(io.grpc.binarylog.Uint128.parser(), extensionRegistry);
+            callId_ = input.readMessage(io.grpc.binarylog.v1alpha.Uint128.parser(), extensionRegistry);
             if (subBuilder != null) {
               subBuilder.mergeFrom(callId_);
               callId_ = subBuilder.buildPartial();
@@ -87,39 +87,39 @@ private static final long serialVersionUID = 0L;
             break;
           }
           case 34: {
-            io.grpc.binarylog.Metadata.Builder subBuilder = null;
+            io.grpc.binarylog.v1alpha.Metadata.Builder subBuilder = null;
             if (payloadCase_ == 4) {
-              subBuilder = ((io.grpc.binarylog.Metadata) payload_).toBuilder();
+              subBuilder = ((io.grpc.binarylog.v1alpha.Metadata) payload_).toBuilder();
             }
             payload_ =
-                input.readMessage(io.grpc.binarylog.Metadata.parser(), extensionRegistry);
+                input.readMessage(io.grpc.binarylog.v1alpha.Metadata.parser(), extensionRegistry);
             if (subBuilder != null) {
-              subBuilder.mergeFrom((io.grpc.binarylog.Metadata) payload_);
+              subBuilder.mergeFrom((io.grpc.binarylog.v1alpha.Metadata) payload_);
               payload_ = subBuilder.buildPartial();
             }
             payloadCase_ = 4;
             break;
           }
           case 42: {
-            io.grpc.binarylog.Message.Builder subBuilder = null;
+            io.grpc.binarylog.v1alpha.Message.Builder subBuilder = null;
             if (payloadCase_ == 5) {
-              subBuilder = ((io.grpc.binarylog.Message) payload_).toBuilder();
+              subBuilder = ((io.grpc.binarylog.v1alpha.Message) payload_).toBuilder();
             }
             payload_ =
-                input.readMessage(io.grpc.binarylog.Message.parser(), extensionRegistry);
+                input.readMessage(io.grpc.binarylog.v1alpha.Message.parser(), extensionRegistry);
             if (subBuilder != null) {
-              subBuilder.mergeFrom((io.grpc.binarylog.Message) payload_);
+              subBuilder.mergeFrom((io.grpc.binarylog.v1alpha.Message) payload_);
               payload_ = subBuilder.buildPartial();
             }
             payloadCase_ = 5;
             break;
           }
           case 50: {
-            io.grpc.binarylog.Peer.Builder subBuilder = null;
+            io.grpc.binarylog.v1alpha.Peer.Builder subBuilder = null;
             if (peer_ != null) {
               subBuilder = peer_.toBuilder();
             }
-            peer_ = input.readMessage(io.grpc.binarylog.Peer.parser(), extensionRegistry);
+            peer_ = input.readMessage(io.grpc.binarylog.v1alpha.Peer.parser(), extensionRegistry);
             if (subBuilder != null) {
               subBuilder.mergeFrom(peer_);
               peer_ = subBuilder.buildPartial();
@@ -186,14 +186,14 @@ private static final long serialVersionUID = 0L;
   }
   public static final com.google.protobuf.Descriptors.Descriptor
       getDescriptor() {
-    return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_GrpcLogEntry_descriptor;
+    return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_GrpcLogEntry_descriptor;
   }
 
   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
       internalGetFieldAccessorTable() {
-    return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_GrpcLogEntry_fieldAccessorTable
+    return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_GrpcLogEntry_fieldAccessorTable
         .ensureFieldAccessorsInitialized(
-            io.grpc.binarylog.GrpcLogEntry.class, io.grpc.binarylog.GrpcLogEntry.Builder.class);
+            io.grpc.binarylog.v1alpha.GrpcLogEntry.class, io.grpc.binarylog.v1alpha.GrpcLogEntry.Builder.class);
   }
 
   /**
@@ -317,7 +317,7 @@ private static final long serialVersionUID = 0L;
     }
     public static final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptor() {
-      return io.grpc.binarylog.GrpcLogEntry.getDescriptor().getEnumTypes().get(0);
+      return io.grpc.binarylog.v1alpha.GrpcLogEntry.getDescriptor().getEnumTypes().get(0);
     }
 
     private static final Type[] VALUES = values();
@@ -428,7 +428,7 @@ private static final long serialVersionUID = 0L;
     }
     public static final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptor() {
-      return io.grpc.binarylog.GrpcLogEntry.getDescriptor().getEnumTypes().get(1);
+      return io.grpc.binarylog.v1alpha.GrpcLogEntry.getDescriptor().getEnumTypes().get(1);
     }
 
     private static final Logger[] VALUES = values();
@@ -511,9 +511,9 @@ private static final long serialVersionUID = 0L;
    *
    * .grpc.binarylog.v1alpha.GrpcLogEntry.Type type = 1;
    */
-  public io.grpc.binarylog.GrpcLogEntry.Type getType() {
-    io.grpc.binarylog.GrpcLogEntry.Type result = io.grpc.binarylog.GrpcLogEntry.Type.valueOf(type_);
-    return result == null ? io.grpc.binarylog.GrpcLogEntry.Type.UNRECOGNIZED : result;
+  public io.grpc.binarylog.v1alpha.GrpcLogEntry.Type getType() {
+    io.grpc.binarylog.v1alpha.GrpcLogEntry.Type result = io.grpc.binarylog.v1alpha.GrpcLogEntry.Type.valueOf(type_);
+    return result == null ? io.grpc.binarylog.v1alpha.GrpcLogEntry.Type.UNRECOGNIZED : result;
   }
 
   public static final int LOGGER_FIELD_NUMBER = 2;
@@ -535,13 +535,13 @@ private static final long serialVersionUID = 0L;
    *
    * .grpc.binarylog.v1alpha.GrpcLogEntry.Logger logger = 2;
    */
-  public io.grpc.binarylog.GrpcLogEntry.Logger getLogger() {
-    io.grpc.binarylog.GrpcLogEntry.Logger result = io.grpc.binarylog.GrpcLogEntry.Logger.valueOf(logger_);
-    return result == null ? io.grpc.binarylog.GrpcLogEntry.Logger.UNRECOGNIZED : result;
+  public io.grpc.binarylog.v1alpha.GrpcLogEntry.Logger getLogger() {
+    io.grpc.binarylog.v1alpha.GrpcLogEntry.Logger result = io.grpc.binarylog.v1alpha.GrpcLogEntry.Logger.valueOf(logger_);
+    return result == null ? io.grpc.binarylog.v1alpha.GrpcLogEntry.Logger.UNRECOGNIZED : result;
   }
 
   public static final int CALL_ID_FIELD_NUMBER = 3;
-  private io.grpc.binarylog.Uint128 callId_;
+  private io.grpc.binarylog.v1alpha.Uint128 callId_;
   /**
    * 
    * Uniquely identifies a call. Each call may have several log entries, they
@@ -561,8 +561,8 @@ private static final long serialVersionUID = 0L;
    *
    * .grpc.binarylog.v1alpha.Uint128 call_id = 3;
    */
-  public io.grpc.binarylog.Uint128 getCallId() {
-    return callId_ == null ? io.grpc.binarylog.Uint128.getDefaultInstance() : callId_;
+  public io.grpc.binarylog.v1alpha.Uint128 getCallId() {
+    return callId_ == null ? io.grpc.binarylog.v1alpha.Uint128.getDefaultInstance() : callId_;
   }
   /**
    * 
@@ -572,7 +572,7 @@ private static final long serialVersionUID = 0L;
    *
    * .grpc.binarylog.v1alpha.Uint128 call_id = 3;
    */
-  public io.grpc.binarylog.Uint128OrBuilder getCallIdOrBuilder() {
+  public io.grpc.binarylog.v1alpha.Uint128OrBuilder getCallIdOrBuilder() {
     return getCallId();
   }
 
@@ -598,11 +598,11 @@ private static final long serialVersionUID = 0L;
    *
    * .grpc.binarylog.v1alpha.Metadata metadata = 4;
    */
-  public io.grpc.binarylog.Metadata getMetadata() {
+  public io.grpc.binarylog.v1alpha.Metadata getMetadata() {
     if (payloadCase_ == 4) {
-       return (io.grpc.binarylog.Metadata) payload_;
+       return (io.grpc.binarylog.v1alpha.Metadata) payload_;
     }
-    return io.grpc.binarylog.Metadata.getDefaultInstance();
+    return io.grpc.binarylog.v1alpha.Metadata.getDefaultInstance();
   }
   /**
    * 
@@ -613,11 +613,11 @@ private static final long serialVersionUID = 0L;
    *
    * .grpc.binarylog.v1alpha.Metadata metadata = 4;
    */
-  public io.grpc.binarylog.MetadataOrBuilder getMetadataOrBuilder() {
+  public io.grpc.binarylog.v1alpha.MetadataOrBuilder getMetadataOrBuilder() {
     if (payloadCase_ == 4) {
-       return (io.grpc.binarylog.Metadata) payload_;
+       return (io.grpc.binarylog.v1alpha.Metadata) payload_;
     }
-    return io.grpc.binarylog.Metadata.getDefaultInstance();
+    return io.grpc.binarylog.v1alpha.Metadata.getDefaultInstance();
   }
 
   public static final int MESSAGE_FIELD_NUMBER = 5;
@@ -638,11 +638,11 @@ private static final long serialVersionUID = 0L;
    *
    * .grpc.binarylog.v1alpha.Message message = 5;
    */
-  public io.grpc.binarylog.Message getMessage() {
+  public io.grpc.binarylog.v1alpha.Message getMessage() {
     if (payloadCase_ == 5) {
-       return (io.grpc.binarylog.Message) payload_;
+       return (io.grpc.binarylog.v1alpha.Message) payload_;
     }
-    return io.grpc.binarylog.Message.getDefaultInstance();
+    return io.grpc.binarylog.v1alpha.Message.getDefaultInstance();
   }
   /**
    * 
@@ -651,15 +651,15 @@ private static final long serialVersionUID = 0L;
    *
    * .grpc.binarylog.v1alpha.Message message = 5;
    */
-  public io.grpc.binarylog.MessageOrBuilder getMessageOrBuilder() {
+  public io.grpc.binarylog.v1alpha.MessageOrBuilder getMessageOrBuilder() {
     if (payloadCase_ == 5) {
-       return (io.grpc.binarylog.Message) payload_;
+       return (io.grpc.binarylog.v1alpha.Message) payload_;
     }
-    return io.grpc.binarylog.Message.getDefaultInstance();
+    return io.grpc.binarylog.v1alpha.Message.getDefaultInstance();
   }
 
   public static final int PEER_FIELD_NUMBER = 6;
-  private io.grpc.binarylog.Peer peer_;
+  private io.grpc.binarylog.v1alpha.Peer peer_;
   /**
    * 
    * Peer address information, will only be recorded in SEND_INITIAL_METADATA
@@ -679,8 +679,8 @@ private static final long serialVersionUID = 0L;
    *
    * .grpc.binarylog.v1alpha.Peer peer = 6;
    */
-  public io.grpc.binarylog.Peer getPeer() {
-    return peer_ == null ? io.grpc.binarylog.Peer.getDefaultInstance() : peer_;
+  public io.grpc.binarylog.v1alpha.Peer getPeer() {
+    return peer_ == null ? io.grpc.binarylog.v1alpha.Peer.getDefaultInstance() : peer_;
   }
   /**
    * 
@@ -690,7 +690,7 @@ private static final long serialVersionUID = 0L;
    *
    * .grpc.binarylog.v1alpha.Peer peer = 6;
    */
-  public io.grpc.binarylog.PeerOrBuilder getPeerOrBuilder() {
+  public io.grpc.binarylog.v1alpha.PeerOrBuilder getPeerOrBuilder() {
     return getPeer();
   }
 
@@ -887,20 +887,20 @@ private static final long serialVersionUID = 0L;
 
   public void writeTo(com.google.protobuf.CodedOutputStream output)
                       throws java.io.IOException {
-    if (type_ != io.grpc.binarylog.GrpcLogEntry.Type.UNKNOWN_TYPE.getNumber()) {
+    if (type_ != io.grpc.binarylog.v1alpha.GrpcLogEntry.Type.UNKNOWN_TYPE.getNumber()) {
       output.writeEnum(1, type_);
     }
-    if (logger_ != io.grpc.binarylog.GrpcLogEntry.Logger.UNKNOWN_LOGGER.getNumber()) {
+    if (logger_ != io.grpc.binarylog.v1alpha.GrpcLogEntry.Logger.UNKNOWN_LOGGER.getNumber()) {
       output.writeEnum(2, logger_);
     }
     if (callId_ != null) {
       output.writeMessage(3, getCallId());
     }
     if (payloadCase_ == 4) {
-      output.writeMessage(4, (io.grpc.binarylog.Metadata) payload_);
+      output.writeMessage(4, (io.grpc.binarylog.v1alpha.Metadata) payload_);
     }
     if (payloadCase_ == 5) {
-      output.writeMessage(5, (io.grpc.binarylog.Message) payload_);
+      output.writeMessage(5, (io.grpc.binarylog.v1alpha.Message) payload_);
     }
     if (peer_ != null) {
       output.writeMessage(6, getPeer());
@@ -934,11 +934,11 @@ private static final long serialVersionUID = 0L;
     if (size != -1) return size;
 
     size = 0;
-    if (type_ != io.grpc.binarylog.GrpcLogEntry.Type.UNKNOWN_TYPE.getNumber()) {
+    if (type_ != io.grpc.binarylog.v1alpha.GrpcLogEntry.Type.UNKNOWN_TYPE.getNumber()) {
       size += com.google.protobuf.CodedOutputStream
         .computeEnumSize(1, type_);
     }
-    if (logger_ != io.grpc.binarylog.GrpcLogEntry.Logger.UNKNOWN_LOGGER.getNumber()) {
+    if (logger_ != io.grpc.binarylog.v1alpha.GrpcLogEntry.Logger.UNKNOWN_LOGGER.getNumber()) {
       size += com.google.protobuf.CodedOutputStream
         .computeEnumSize(2, logger_);
     }
@@ -948,11 +948,11 @@ private static final long serialVersionUID = 0L;
     }
     if (payloadCase_ == 4) {
       size += com.google.protobuf.CodedOutputStream
-        .computeMessageSize(4, (io.grpc.binarylog.Metadata) payload_);
+        .computeMessageSize(4, (io.grpc.binarylog.v1alpha.Metadata) payload_);
     }
     if (payloadCase_ == 5) {
       size += com.google.protobuf.CodedOutputStream
-        .computeMessageSize(5, (io.grpc.binarylog.Message) payload_);
+        .computeMessageSize(5, (io.grpc.binarylog.v1alpha.Message) payload_);
     }
     if (peer_ != null) {
       size += com.google.protobuf.CodedOutputStream
@@ -994,10 +994,10 @@ private static final long serialVersionUID = 0L;
     if (obj == this) {
      return true;
     }
-    if (!(obj instanceof io.grpc.binarylog.GrpcLogEntry)) {
+    if (!(obj instanceof io.grpc.binarylog.v1alpha.GrpcLogEntry)) {
       return super.equals(obj);
     }
-    io.grpc.binarylog.GrpcLogEntry other = (io.grpc.binarylog.GrpcLogEntry) obj;
+    io.grpc.binarylog.v1alpha.GrpcLogEntry other = (io.grpc.binarylog.v1alpha.GrpcLogEntry) obj;
 
     boolean result = true;
     result = result && type_ == other.type_;
@@ -1101,69 +1101,69 @@ private static final long serialVersionUID = 0L;
     return hash;
   }
 
-  public static io.grpc.binarylog.GrpcLogEntry parseFrom(
+  public static io.grpc.binarylog.v1alpha.GrpcLogEntry parseFrom(
       java.nio.ByteBuffer data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.GrpcLogEntry parseFrom(
+  public static io.grpc.binarylog.v1alpha.GrpcLogEntry parseFrom(
       java.nio.ByteBuffer data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.GrpcLogEntry parseFrom(
+  public static io.grpc.binarylog.v1alpha.GrpcLogEntry parseFrom(
       com.google.protobuf.ByteString data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.GrpcLogEntry parseFrom(
+  public static io.grpc.binarylog.v1alpha.GrpcLogEntry parseFrom(
       com.google.protobuf.ByteString data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.GrpcLogEntry parseFrom(byte[] data)
+  public static io.grpc.binarylog.v1alpha.GrpcLogEntry parseFrom(byte[] data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.GrpcLogEntry parseFrom(
+  public static io.grpc.binarylog.v1alpha.GrpcLogEntry parseFrom(
       byte[] data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.GrpcLogEntry parseFrom(java.io.InputStream input)
+  public static io.grpc.binarylog.v1alpha.GrpcLogEntry parseFrom(java.io.InputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.GrpcLogEntry parseFrom(
+  public static io.grpc.binarylog.v1alpha.GrpcLogEntry parseFrom(
       java.io.InputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input, extensionRegistry);
   }
-  public static io.grpc.binarylog.GrpcLogEntry parseDelimitedFrom(java.io.InputStream input)
+  public static io.grpc.binarylog.v1alpha.GrpcLogEntry parseDelimitedFrom(java.io.InputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseDelimitedWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.GrpcLogEntry parseDelimitedFrom(
+  public static io.grpc.binarylog.v1alpha.GrpcLogEntry parseDelimitedFrom(
       java.io.InputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
   }
-  public static io.grpc.binarylog.GrpcLogEntry parseFrom(
+  public static io.grpc.binarylog.v1alpha.GrpcLogEntry parseFrom(
       com.google.protobuf.CodedInputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.GrpcLogEntry parseFrom(
+  public static io.grpc.binarylog.v1alpha.GrpcLogEntry parseFrom(
       com.google.protobuf.CodedInputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
@@ -1175,7 +1175,7 @@ private static final long serialVersionUID = 0L;
   public static Builder newBuilder() {
     return DEFAULT_INSTANCE.toBuilder();
   }
-  public static Builder newBuilder(io.grpc.binarylog.GrpcLogEntry prototype) {
+  public static Builder newBuilder(io.grpc.binarylog.v1alpha.GrpcLogEntry prototype) {
     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
   }
   public Builder toBuilder() {
@@ -1199,20 +1199,20 @@ private static final long serialVersionUID = 0L;
   public static final class Builder extends
       com.google.protobuf.GeneratedMessageV3.Builder implements
       // @@protoc_insertion_point(builder_implements:grpc.binarylog.v1alpha.GrpcLogEntry)
-      io.grpc.binarylog.GrpcLogEntryOrBuilder {
+      io.grpc.binarylog.v1alpha.GrpcLogEntryOrBuilder {
     public static final com.google.protobuf.Descriptors.Descriptor
         getDescriptor() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_GrpcLogEntry_descriptor;
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_GrpcLogEntry_descriptor;
     }
 
     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
         internalGetFieldAccessorTable() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_GrpcLogEntry_fieldAccessorTable
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_GrpcLogEntry_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
-              io.grpc.binarylog.GrpcLogEntry.class, io.grpc.binarylog.GrpcLogEntry.Builder.class);
+              io.grpc.binarylog.v1alpha.GrpcLogEntry.class, io.grpc.binarylog.v1alpha.GrpcLogEntry.Builder.class);
     }
 
-    // Construct using io.grpc.binarylog.GrpcLogEntry.newBuilder()
+    // Construct using io.grpc.binarylog.v1alpha.GrpcLogEntry.newBuilder()
     private Builder() {
       maybeForceBuilderInitialization();
     }
@@ -1270,23 +1270,23 @@ private static final long serialVersionUID = 0L;
 
     public com.google.protobuf.Descriptors.Descriptor
         getDescriptorForType() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_GrpcLogEntry_descriptor;
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_GrpcLogEntry_descriptor;
     }
 
-    public io.grpc.binarylog.GrpcLogEntry getDefaultInstanceForType() {
-      return io.grpc.binarylog.GrpcLogEntry.getDefaultInstance();
+    public io.grpc.binarylog.v1alpha.GrpcLogEntry getDefaultInstanceForType() {
+      return io.grpc.binarylog.v1alpha.GrpcLogEntry.getDefaultInstance();
     }
 
-    public io.grpc.binarylog.GrpcLogEntry build() {
-      io.grpc.binarylog.GrpcLogEntry result = buildPartial();
+    public io.grpc.binarylog.v1alpha.GrpcLogEntry build() {
+      io.grpc.binarylog.v1alpha.GrpcLogEntry result = buildPartial();
       if (!result.isInitialized()) {
         throw newUninitializedMessageException(result);
       }
       return result;
     }
 
-    public io.grpc.binarylog.GrpcLogEntry buildPartial() {
-      io.grpc.binarylog.GrpcLogEntry result = new io.grpc.binarylog.GrpcLogEntry(this);
+    public io.grpc.binarylog.v1alpha.GrpcLogEntry buildPartial() {
+      io.grpc.binarylog.v1alpha.GrpcLogEntry result = new io.grpc.binarylog.v1alpha.GrpcLogEntry(this);
       result.type_ = type_;
       result.logger_ = logger_;
       if (callIdBuilder_ == null) {
@@ -1356,16 +1356,16 @@ private static final long serialVersionUID = 0L;
       return (Builder) super.addRepeatedField(field, value);
     }
     public Builder mergeFrom(com.google.protobuf.Message other) {
-      if (other instanceof io.grpc.binarylog.GrpcLogEntry) {
-        return mergeFrom((io.grpc.binarylog.GrpcLogEntry)other);
+      if (other instanceof io.grpc.binarylog.v1alpha.GrpcLogEntry) {
+        return mergeFrom((io.grpc.binarylog.v1alpha.GrpcLogEntry)other);
       } else {
         super.mergeFrom(other);
         return this;
       }
     }
 
-    public Builder mergeFrom(io.grpc.binarylog.GrpcLogEntry other) {
-      if (other == io.grpc.binarylog.GrpcLogEntry.getDefaultInstance()) return this;
+    public Builder mergeFrom(io.grpc.binarylog.v1alpha.GrpcLogEntry other) {
+      if (other == io.grpc.binarylog.v1alpha.GrpcLogEntry.getDefaultInstance()) return this;
       if (other.type_ != 0) {
         setTypeValue(other.getTypeValue());
       }
@@ -1427,11 +1427,11 @@ private static final long serialVersionUID = 0L;
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      io.grpc.binarylog.GrpcLogEntry parsedMessage = null;
+      io.grpc.binarylog.v1alpha.GrpcLogEntry parsedMessage = null;
       try {
         parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
-        parsedMessage = (io.grpc.binarylog.GrpcLogEntry) e.getUnfinishedMessage();
+        parsedMessage = (io.grpc.binarylog.v1alpha.GrpcLogEntry) e.getUnfinishedMessage();
         throw e.unwrapIOException();
       } finally {
         if (parsedMessage != null) {
@@ -1486,9 +1486,9 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.GrpcLogEntry.Type type = 1;
      */
-    public io.grpc.binarylog.GrpcLogEntry.Type getType() {
-      io.grpc.binarylog.GrpcLogEntry.Type result = io.grpc.binarylog.GrpcLogEntry.Type.valueOf(type_);
-      return result == null ? io.grpc.binarylog.GrpcLogEntry.Type.UNRECOGNIZED : result;
+    public io.grpc.binarylog.v1alpha.GrpcLogEntry.Type getType() {
+      io.grpc.binarylog.v1alpha.GrpcLogEntry.Type result = io.grpc.binarylog.v1alpha.GrpcLogEntry.Type.valueOf(type_);
+      return result == null ? io.grpc.binarylog.v1alpha.GrpcLogEntry.Type.UNRECOGNIZED : result;
     }
     /**
      * 
@@ -1497,7 +1497,7 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.GrpcLogEntry.Type type = 1;
      */
-    public Builder setType(io.grpc.binarylog.GrpcLogEntry.Type value) {
+    public Builder setType(io.grpc.binarylog.v1alpha.GrpcLogEntry.Type value) {
       if (value == null) {
         throw new NullPointerException();
       }
@@ -1550,9 +1550,9 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.GrpcLogEntry.Logger logger = 2;
      */
-    public io.grpc.binarylog.GrpcLogEntry.Logger getLogger() {
-      io.grpc.binarylog.GrpcLogEntry.Logger result = io.grpc.binarylog.GrpcLogEntry.Logger.valueOf(logger_);
-      return result == null ? io.grpc.binarylog.GrpcLogEntry.Logger.UNRECOGNIZED : result;
+    public io.grpc.binarylog.v1alpha.GrpcLogEntry.Logger getLogger() {
+      io.grpc.binarylog.v1alpha.GrpcLogEntry.Logger result = io.grpc.binarylog.v1alpha.GrpcLogEntry.Logger.valueOf(logger_);
+      return result == null ? io.grpc.binarylog.v1alpha.GrpcLogEntry.Logger.UNRECOGNIZED : result;
     }
     /**
      * 
@@ -1561,7 +1561,7 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.GrpcLogEntry.Logger logger = 2;
      */
-    public Builder setLogger(io.grpc.binarylog.GrpcLogEntry.Logger value) {
+    public Builder setLogger(io.grpc.binarylog.v1alpha.GrpcLogEntry.Logger value) {
       if (value == null) {
         throw new NullPointerException();
       }
@@ -1584,9 +1584,9 @@ private static final long serialVersionUID = 0L;
       return this;
     }
 
-    private io.grpc.binarylog.Uint128 callId_ = null;
+    private io.grpc.binarylog.v1alpha.Uint128 callId_ = null;
     private com.google.protobuf.SingleFieldBuilderV3<
-        io.grpc.binarylog.Uint128, io.grpc.binarylog.Uint128.Builder, io.grpc.binarylog.Uint128OrBuilder> callIdBuilder_;
+        io.grpc.binarylog.v1alpha.Uint128, io.grpc.binarylog.v1alpha.Uint128.Builder, io.grpc.binarylog.v1alpha.Uint128OrBuilder> callIdBuilder_;
     /**
      * 
      * Uniquely identifies a call. Each call may have several log entries, they
@@ -1606,9 +1606,9 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Uint128 call_id = 3;
      */
-    public io.grpc.binarylog.Uint128 getCallId() {
+    public io.grpc.binarylog.v1alpha.Uint128 getCallId() {
       if (callIdBuilder_ == null) {
-        return callId_ == null ? io.grpc.binarylog.Uint128.getDefaultInstance() : callId_;
+        return callId_ == null ? io.grpc.binarylog.v1alpha.Uint128.getDefaultInstance() : callId_;
       } else {
         return callIdBuilder_.getMessage();
       }
@@ -1621,7 +1621,7 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Uint128 call_id = 3;
      */
-    public Builder setCallId(io.grpc.binarylog.Uint128 value) {
+    public Builder setCallId(io.grpc.binarylog.v1alpha.Uint128 value) {
       if (callIdBuilder_ == null) {
         if (value == null) {
           throw new NullPointerException();
@@ -1643,7 +1643,7 @@ private static final long serialVersionUID = 0L;
      * .grpc.binarylog.v1alpha.Uint128 call_id = 3;
      */
     public Builder setCallId(
-        io.grpc.binarylog.Uint128.Builder builderForValue) {
+        io.grpc.binarylog.v1alpha.Uint128.Builder builderForValue) {
       if (callIdBuilder_ == null) {
         callId_ = builderForValue.build();
         onChanged();
@@ -1661,11 +1661,11 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Uint128 call_id = 3;
      */
-    public Builder mergeCallId(io.grpc.binarylog.Uint128 value) {
+    public Builder mergeCallId(io.grpc.binarylog.v1alpha.Uint128 value) {
       if (callIdBuilder_ == null) {
         if (callId_ != null) {
           callId_ =
-            io.grpc.binarylog.Uint128.newBuilder(callId_).mergeFrom(value).buildPartial();
+            io.grpc.binarylog.v1alpha.Uint128.newBuilder(callId_).mergeFrom(value).buildPartial();
         } else {
           callId_ = value;
         }
@@ -1703,7 +1703,7 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Uint128 call_id = 3;
      */
-    public io.grpc.binarylog.Uint128.Builder getCallIdBuilder() {
+    public io.grpc.binarylog.v1alpha.Uint128.Builder getCallIdBuilder() {
       
       onChanged();
       return getCallIdFieldBuilder().getBuilder();
@@ -1716,12 +1716,12 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Uint128 call_id = 3;
      */
-    public io.grpc.binarylog.Uint128OrBuilder getCallIdOrBuilder() {
+    public io.grpc.binarylog.v1alpha.Uint128OrBuilder getCallIdOrBuilder() {
       if (callIdBuilder_ != null) {
         return callIdBuilder_.getMessageOrBuilder();
       } else {
         return callId_ == null ?
-            io.grpc.binarylog.Uint128.getDefaultInstance() : callId_;
+            io.grpc.binarylog.v1alpha.Uint128.getDefaultInstance() : callId_;
       }
     }
     /**
@@ -1733,11 +1733,11 @@ private static final long serialVersionUID = 0L;
      * .grpc.binarylog.v1alpha.Uint128 call_id = 3;
      */
     private com.google.protobuf.SingleFieldBuilderV3<
-        io.grpc.binarylog.Uint128, io.grpc.binarylog.Uint128.Builder, io.grpc.binarylog.Uint128OrBuilder> 
+        io.grpc.binarylog.v1alpha.Uint128, io.grpc.binarylog.v1alpha.Uint128.Builder, io.grpc.binarylog.v1alpha.Uint128OrBuilder> 
         getCallIdFieldBuilder() {
       if (callIdBuilder_ == null) {
         callIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
-            io.grpc.binarylog.Uint128, io.grpc.binarylog.Uint128.Builder, io.grpc.binarylog.Uint128OrBuilder>(
+            io.grpc.binarylog.v1alpha.Uint128, io.grpc.binarylog.v1alpha.Uint128.Builder, io.grpc.binarylog.v1alpha.Uint128OrBuilder>(
                 getCallId(),
                 getParentForChildren(),
                 isClean());
@@ -1747,7 +1747,7 @@ private static final long serialVersionUID = 0L;
     }
 
     private com.google.protobuf.SingleFieldBuilderV3<
-        io.grpc.binarylog.Metadata, io.grpc.binarylog.Metadata.Builder, io.grpc.binarylog.MetadataOrBuilder> metadataBuilder_;
+        io.grpc.binarylog.v1alpha.Metadata, io.grpc.binarylog.v1alpha.Metadata.Builder, io.grpc.binarylog.v1alpha.MetadataOrBuilder> metadataBuilder_;
     /**
      * 
      * Used by {SEND,RECV}_INITIAL_METADATA and
@@ -1769,17 +1769,17 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Metadata metadata = 4;
      */
-    public io.grpc.binarylog.Metadata getMetadata() {
+    public io.grpc.binarylog.v1alpha.Metadata getMetadata() {
       if (metadataBuilder_ == null) {
         if (payloadCase_ == 4) {
-          return (io.grpc.binarylog.Metadata) payload_;
+          return (io.grpc.binarylog.v1alpha.Metadata) payload_;
         }
-        return io.grpc.binarylog.Metadata.getDefaultInstance();
+        return io.grpc.binarylog.v1alpha.Metadata.getDefaultInstance();
       } else {
         if (payloadCase_ == 4) {
           return metadataBuilder_.getMessage();
         }
-        return io.grpc.binarylog.Metadata.getDefaultInstance();
+        return io.grpc.binarylog.v1alpha.Metadata.getDefaultInstance();
       }
     }
     /**
@@ -1791,7 +1791,7 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Metadata metadata = 4;
      */
-    public Builder setMetadata(io.grpc.binarylog.Metadata value) {
+    public Builder setMetadata(io.grpc.binarylog.v1alpha.Metadata value) {
       if (metadataBuilder_ == null) {
         if (value == null) {
           throw new NullPointerException();
@@ -1814,7 +1814,7 @@ private static final long serialVersionUID = 0L;
      * .grpc.binarylog.v1alpha.Metadata metadata = 4;
      */
     public Builder setMetadata(
-        io.grpc.binarylog.Metadata.Builder builderForValue) {
+        io.grpc.binarylog.v1alpha.Metadata.Builder builderForValue) {
       if (metadataBuilder_ == null) {
         payload_ = builderForValue.build();
         onChanged();
@@ -1833,11 +1833,11 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Metadata metadata = 4;
      */
-    public Builder mergeMetadata(io.grpc.binarylog.Metadata value) {
+    public Builder mergeMetadata(io.grpc.binarylog.v1alpha.Metadata value) {
       if (metadataBuilder_ == null) {
         if (payloadCase_ == 4 &&
-            payload_ != io.grpc.binarylog.Metadata.getDefaultInstance()) {
-          payload_ = io.grpc.binarylog.Metadata.newBuilder((io.grpc.binarylog.Metadata) payload_)
+            payload_ != io.grpc.binarylog.v1alpha.Metadata.getDefaultInstance()) {
+          payload_ = io.grpc.binarylog.v1alpha.Metadata.newBuilder((io.grpc.binarylog.v1alpha.Metadata) payload_)
               .mergeFrom(value).buildPartial();
         } else {
           payload_ = value;
@@ -1886,7 +1886,7 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Metadata metadata = 4;
      */
-    public io.grpc.binarylog.Metadata.Builder getMetadataBuilder() {
+    public io.grpc.binarylog.v1alpha.Metadata.Builder getMetadataBuilder() {
       return getMetadataFieldBuilder().getBuilder();
     }
     /**
@@ -1898,14 +1898,14 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Metadata metadata = 4;
      */
-    public io.grpc.binarylog.MetadataOrBuilder getMetadataOrBuilder() {
+    public io.grpc.binarylog.v1alpha.MetadataOrBuilder getMetadataOrBuilder() {
       if ((payloadCase_ == 4) && (metadataBuilder_ != null)) {
         return metadataBuilder_.getMessageOrBuilder();
       } else {
         if (payloadCase_ == 4) {
-          return (io.grpc.binarylog.Metadata) payload_;
+          return (io.grpc.binarylog.v1alpha.Metadata) payload_;
         }
-        return io.grpc.binarylog.Metadata.getDefaultInstance();
+        return io.grpc.binarylog.v1alpha.Metadata.getDefaultInstance();
       }
     }
     /**
@@ -1918,15 +1918,15 @@ private static final long serialVersionUID = 0L;
      * .grpc.binarylog.v1alpha.Metadata metadata = 4;
      */
     private com.google.protobuf.SingleFieldBuilderV3<
-        io.grpc.binarylog.Metadata, io.grpc.binarylog.Metadata.Builder, io.grpc.binarylog.MetadataOrBuilder> 
+        io.grpc.binarylog.v1alpha.Metadata, io.grpc.binarylog.v1alpha.Metadata.Builder, io.grpc.binarylog.v1alpha.MetadataOrBuilder> 
         getMetadataFieldBuilder() {
       if (metadataBuilder_ == null) {
         if (!(payloadCase_ == 4)) {
-          payload_ = io.grpc.binarylog.Metadata.getDefaultInstance();
+          payload_ = io.grpc.binarylog.v1alpha.Metadata.getDefaultInstance();
         }
         metadataBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
-            io.grpc.binarylog.Metadata, io.grpc.binarylog.Metadata.Builder, io.grpc.binarylog.MetadataOrBuilder>(
-                (io.grpc.binarylog.Metadata) payload_,
+            io.grpc.binarylog.v1alpha.Metadata, io.grpc.binarylog.v1alpha.Metadata.Builder, io.grpc.binarylog.v1alpha.MetadataOrBuilder>(
+                (io.grpc.binarylog.v1alpha.Metadata) payload_,
                 getParentForChildren(),
                 isClean());
         payload_ = null;
@@ -1937,7 +1937,7 @@ private static final long serialVersionUID = 0L;
     }
 
     private com.google.protobuf.SingleFieldBuilderV3<
-        io.grpc.binarylog.Message, io.grpc.binarylog.Message.Builder, io.grpc.binarylog.MessageOrBuilder> messageBuilder_;
+        io.grpc.binarylog.v1alpha.Message, io.grpc.binarylog.v1alpha.Message.Builder, io.grpc.binarylog.v1alpha.MessageOrBuilder> messageBuilder_;
     /**
      * 
      * Used by {SEND,RECV}_MESSAGE
@@ -1955,17 +1955,17 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Message message = 5;
      */
-    public io.grpc.binarylog.Message getMessage() {
+    public io.grpc.binarylog.v1alpha.Message getMessage() {
       if (messageBuilder_ == null) {
         if (payloadCase_ == 5) {
-          return (io.grpc.binarylog.Message) payload_;
+          return (io.grpc.binarylog.v1alpha.Message) payload_;
         }
-        return io.grpc.binarylog.Message.getDefaultInstance();
+        return io.grpc.binarylog.v1alpha.Message.getDefaultInstance();
       } else {
         if (payloadCase_ == 5) {
           return messageBuilder_.getMessage();
         }
-        return io.grpc.binarylog.Message.getDefaultInstance();
+        return io.grpc.binarylog.v1alpha.Message.getDefaultInstance();
       }
     }
     /**
@@ -1975,7 +1975,7 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Message message = 5;
      */
-    public Builder setMessage(io.grpc.binarylog.Message value) {
+    public Builder setMessage(io.grpc.binarylog.v1alpha.Message value) {
       if (messageBuilder_ == null) {
         if (value == null) {
           throw new NullPointerException();
@@ -1996,7 +1996,7 @@ private static final long serialVersionUID = 0L;
      * .grpc.binarylog.v1alpha.Message message = 5;
      */
     public Builder setMessage(
-        io.grpc.binarylog.Message.Builder builderForValue) {
+        io.grpc.binarylog.v1alpha.Message.Builder builderForValue) {
       if (messageBuilder_ == null) {
         payload_ = builderForValue.build();
         onChanged();
@@ -2013,11 +2013,11 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Message message = 5;
      */
-    public Builder mergeMessage(io.grpc.binarylog.Message value) {
+    public Builder mergeMessage(io.grpc.binarylog.v1alpha.Message value) {
       if (messageBuilder_ == null) {
         if (payloadCase_ == 5 &&
-            payload_ != io.grpc.binarylog.Message.getDefaultInstance()) {
-          payload_ = io.grpc.binarylog.Message.newBuilder((io.grpc.binarylog.Message) payload_)
+            payload_ != io.grpc.binarylog.v1alpha.Message.getDefaultInstance()) {
+          payload_ = io.grpc.binarylog.v1alpha.Message.newBuilder((io.grpc.binarylog.v1alpha.Message) payload_)
               .mergeFrom(value).buildPartial();
         } else {
           payload_ = value;
@@ -2062,7 +2062,7 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Message message = 5;
      */
-    public io.grpc.binarylog.Message.Builder getMessageBuilder() {
+    public io.grpc.binarylog.v1alpha.Message.Builder getMessageBuilder() {
       return getMessageFieldBuilder().getBuilder();
     }
     /**
@@ -2072,14 +2072,14 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Message message = 5;
      */
-    public io.grpc.binarylog.MessageOrBuilder getMessageOrBuilder() {
+    public io.grpc.binarylog.v1alpha.MessageOrBuilder getMessageOrBuilder() {
       if ((payloadCase_ == 5) && (messageBuilder_ != null)) {
         return messageBuilder_.getMessageOrBuilder();
       } else {
         if (payloadCase_ == 5) {
-          return (io.grpc.binarylog.Message) payload_;
+          return (io.grpc.binarylog.v1alpha.Message) payload_;
         }
-        return io.grpc.binarylog.Message.getDefaultInstance();
+        return io.grpc.binarylog.v1alpha.Message.getDefaultInstance();
       }
     }
     /**
@@ -2090,15 +2090,15 @@ private static final long serialVersionUID = 0L;
      * .grpc.binarylog.v1alpha.Message message = 5;
      */
     private com.google.protobuf.SingleFieldBuilderV3<
-        io.grpc.binarylog.Message, io.grpc.binarylog.Message.Builder, io.grpc.binarylog.MessageOrBuilder> 
+        io.grpc.binarylog.v1alpha.Message, io.grpc.binarylog.v1alpha.Message.Builder, io.grpc.binarylog.v1alpha.MessageOrBuilder> 
         getMessageFieldBuilder() {
       if (messageBuilder_ == null) {
         if (!(payloadCase_ == 5)) {
-          payload_ = io.grpc.binarylog.Message.getDefaultInstance();
+          payload_ = io.grpc.binarylog.v1alpha.Message.getDefaultInstance();
         }
         messageBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
-            io.grpc.binarylog.Message, io.grpc.binarylog.Message.Builder, io.grpc.binarylog.MessageOrBuilder>(
-                (io.grpc.binarylog.Message) payload_,
+            io.grpc.binarylog.v1alpha.Message, io.grpc.binarylog.v1alpha.Message.Builder, io.grpc.binarylog.v1alpha.MessageOrBuilder>(
+                (io.grpc.binarylog.v1alpha.Message) payload_,
                 getParentForChildren(),
                 isClean());
         payload_ = null;
@@ -2108,9 +2108,9 @@ private static final long serialVersionUID = 0L;
       return messageBuilder_;
     }
 
-    private io.grpc.binarylog.Peer peer_ = null;
+    private io.grpc.binarylog.v1alpha.Peer peer_ = null;
     private com.google.protobuf.SingleFieldBuilderV3<
-        io.grpc.binarylog.Peer, io.grpc.binarylog.Peer.Builder, io.grpc.binarylog.PeerOrBuilder> peerBuilder_;
+        io.grpc.binarylog.v1alpha.Peer, io.grpc.binarylog.v1alpha.Peer.Builder, io.grpc.binarylog.v1alpha.PeerOrBuilder> peerBuilder_;
     /**
      * 
      * Peer address information, will only be recorded in SEND_INITIAL_METADATA
@@ -2130,9 +2130,9 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Peer peer = 6;
      */
-    public io.grpc.binarylog.Peer getPeer() {
+    public io.grpc.binarylog.v1alpha.Peer getPeer() {
       if (peerBuilder_ == null) {
-        return peer_ == null ? io.grpc.binarylog.Peer.getDefaultInstance() : peer_;
+        return peer_ == null ? io.grpc.binarylog.v1alpha.Peer.getDefaultInstance() : peer_;
       } else {
         return peerBuilder_.getMessage();
       }
@@ -2145,7 +2145,7 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Peer peer = 6;
      */
-    public Builder setPeer(io.grpc.binarylog.Peer value) {
+    public Builder setPeer(io.grpc.binarylog.v1alpha.Peer value) {
       if (peerBuilder_ == null) {
         if (value == null) {
           throw new NullPointerException();
@@ -2167,7 +2167,7 @@ private static final long serialVersionUID = 0L;
      * .grpc.binarylog.v1alpha.Peer peer = 6;
      */
     public Builder setPeer(
-        io.grpc.binarylog.Peer.Builder builderForValue) {
+        io.grpc.binarylog.v1alpha.Peer.Builder builderForValue) {
       if (peerBuilder_ == null) {
         peer_ = builderForValue.build();
         onChanged();
@@ -2185,11 +2185,11 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Peer peer = 6;
      */
-    public Builder mergePeer(io.grpc.binarylog.Peer value) {
+    public Builder mergePeer(io.grpc.binarylog.v1alpha.Peer value) {
       if (peerBuilder_ == null) {
         if (peer_ != null) {
           peer_ =
-            io.grpc.binarylog.Peer.newBuilder(peer_).mergeFrom(value).buildPartial();
+            io.grpc.binarylog.v1alpha.Peer.newBuilder(peer_).mergeFrom(value).buildPartial();
         } else {
           peer_ = value;
         }
@@ -2227,7 +2227,7 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Peer peer = 6;
      */
-    public io.grpc.binarylog.Peer.Builder getPeerBuilder() {
+    public io.grpc.binarylog.v1alpha.Peer.Builder getPeerBuilder() {
       
       onChanged();
       return getPeerFieldBuilder().getBuilder();
@@ -2240,12 +2240,12 @@ private static final long serialVersionUID = 0L;
      *
      * .grpc.binarylog.v1alpha.Peer peer = 6;
      */
-    public io.grpc.binarylog.PeerOrBuilder getPeerOrBuilder() {
+    public io.grpc.binarylog.v1alpha.PeerOrBuilder getPeerOrBuilder() {
       if (peerBuilder_ != null) {
         return peerBuilder_.getMessageOrBuilder();
       } else {
         return peer_ == null ?
-            io.grpc.binarylog.Peer.getDefaultInstance() : peer_;
+            io.grpc.binarylog.v1alpha.Peer.getDefaultInstance() : peer_;
       }
     }
     /**
@@ -2257,11 +2257,11 @@ private static final long serialVersionUID = 0L;
      * .grpc.binarylog.v1alpha.Peer peer = 6;
      */
     private com.google.protobuf.SingleFieldBuilderV3<
-        io.grpc.binarylog.Peer, io.grpc.binarylog.Peer.Builder, io.grpc.binarylog.PeerOrBuilder> 
+        io.grpc.binarylog.v1alpha.Peer, io.grpc.binarylog.v1alpha.Peer.Builder, io.grpc.binarylog.v1alpha.PeerOrBuilder> 
         getPeerFieldBuilder() {
       if (peerBuilder_ == null) {
         peerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
-            io.grpc.binarylog.Peer, io.grpc.binarylog.Peer.Builder, io.grpc.binarylog.PeerOrBuilder>(
+            io.grpc.binarylog.v1alpha.Peer, io.grpc.binarylog.v1alpha.Peer.Builder, io.grpc.binarylog.v1alpha.PeerOrBuilder>(
                 getPeer(),
                 getParentForChildren(),
                 isClean());
@@ -2803,12 +2803,12 @@ private static final long serialVersionUID = 0L;
   }
 
   // @@protoc_insertion_point(class_scope:grpc.binarylog.v1alpha.GrpcLogEntry)
-  private static final io.grpc.binarylog.GrpcLogEntry DEFAULT_INSTANCE;
+  private static final io.grpc.binarylog.v1alpha.GrpcLogEntry DEFAULT_INSTANCE;
   static {
-    DEFAULT_INSTANCE = new io.grpc.binarylog.GrpcLogEntry();
+    DEFAULT_INSTANCE = new io.grpc.binarylog.v1alpha.GrpcLogEntry();
   }
 
-  public static io.grpc.binarylog.GrpcLogEntry getDefaultInstance() {
+  public static io.grpc.binarylog.v1alpha.GrpcLogEntry getDefaultInstance() {
     return DEFAULT_INSTANCE;
   }
 
@@ -2831,7 +2831,7 @@ private static final long serialVersionUID = 0L;
     return PARSER;
   }
 
-  public io.grpc.binarylog.GrpcLogEntry getDefaultInstanceForType() {
+  public io.grpc.binarylog.v1alpha.GrpcLogEntry getDefaultInstanceForType() {
     return DEFAULT_INSTANCE;
   }
 
diff --git a/services/src/generated/main/java/io/grpc/binarylog/GrpcLogEntryOrBuilder.java b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/GrpcLogEntryOrBuilder.java
similarity index 89%
rename from services/src/generated/main/java/io/grpc/binarylog/GrpcLogEntryOrBuilder.java
rename to services/src/generated/main/java/io/grpc/binarylog/v1alpha/GrpcLogEntryOrBuilder.java
index 7e5f9e57d9..e4c7c6e986 100644
--- a/services/src/generated/main/java/io/grpc/binarylog/GrpcLogEntryOrBuilder.java
+++ b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/GrpcLogEntryOrBuilder.java
@@ -1,7 +1,7 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
-// source: io/grpc/binarylog.proto
+// source: grpc/binlog/v1alpha/binarylog.proto
 
-package io.grpc.binarylog;
+package io.grpc.binarylog.v1alpha;
 
 public interface GrpcLogEntryOrBuilder extends
     // @@protoc_insertion_point(interface_extends:grpc.binarylog.v1alpha.GrpcLogEntry)
@@ -22,7 +22,7 @@ public interface GrpcLogEntryOrBuilder extends
    *
    * .grpc.binarylog.v1alpha.GrpcLogEntry.Type type = 1;
    */
-  io.grpc.binarylog.GrpcLogEntry.Type getType();
+  io.grpc.binarylog.v1alpha.GrpcLogEntry.Type getType();
 
   /**
    * 
@@ -39,7 +39,7 @@ public interface GrpcLogEntryOrBuilder extends
    *
    * .grpc.binarylog.v1alpha.GrpcLogEntry.Logger logger = 2;
    */
-  io.grpc.binarylog.GrpcLogEntry.Logger getLogger();
+  io.grpc.binarylog.v1alpha.GrpcLogEntry.Logger getLogger();
 
   /**
    * 
@@ -58,7 +58,7 @@ public interface GrpcLogEntryOrBuilder extends
    *
    * .grpc.binarylog.v1alpha.Uint128 call_id = 3;
    */
-  io.grpc.binarylog.Uint128 getCallId();
+  io.grpc.binarylog.v1alpha.Uint128 getCallId();
   /**
    * 
    * Uniquely identifies a call. Each call may have several log entries, they
@@ -67,7 +67,7 @@ public interface GrpcLogEntryOrBuilder extends
    *
    * .grpc.binarylog.v1alpha.Uint128 call_id = 3;
    */
-  io.grpc.binarylog.Uint128OrBuilder getCallIdOrBuilder();
+  io.grpc.binarylog.v1alpha.Uint128OrBuilder getCallIdOrBuilder();
 
   /**
    * 
@@ -88,7 +88,7 @@ public interface GrpcLogEntryOrBuilder extends
    *
    * .grpc.binarylog.v1alpha.Metadata metadata = 4;
    */
-  io.grpc.binarylog.Metadata getMetadata();
+  io.grpc.binarylog.v1alpha.Metadata getMetadata();
   /**
    * 
    * Used by {SEND,RECV}_INITIAL_METADATA and
@@ -98,7 +98,7 @@ public interface GrpcLogEntryOrBuilder extends
    *
    * .grpc.binarylog.v1alpha.Metadata metadata = 4;
    */
-  io.grpc.binarylog.MetadataOrBuilder getMetadataOrBuilder();
+  io.grpc.binarylog.v1alpha.MetadataOrBuilder getMetadataOrBuilder();
 
   /**
    * 
@@ -115,7 +115,7 @@ public interface GrpcLogEntryOrBuilder extends
    *
    * .grpc.binarylog.v1alpha.Message message = 5;
    */
-  io.grpc.binarylog.Message getMessage();
+  io.grpc.binarylog.v1alpha.Message getMessage();
   /**
    * 
    * Used by {SEND,RECV}_MESSAGE
@@ -123,7 +123,7 @@ public interface GrpcLogEntryOrBuilder extends
    *
    * .grpc.binarylog.v1alpha.Message message = 5;
    */
-  io.grpc.binarylog.MessageOrBuilder getMessageOrBuilder();
+  io.grpc.binarylog.v1alpha.MessageOrBuilder getMessageOrBuilder();
 
   /**
    * 
@@ -142,7 +142,7 @@ public interface GrpcLogEntryOrBuilder extends
    *
    * .grpc.binarylog.v1alpha.Peer peer = 6;
    */
-  io.grpc.binarylog.Peer getPeer();
+  io.grpc.binarylog.v1alpha.Peer getPeer();
   /**
    * 
    * Peer address information, will only be recorded in SEND_INITIAL_METADATA
@@ -151,7 +151,7 @@ public interface GrpcLogEntryOrBuilder extends
    *
    * .grpc.binarylog.v1alpha.Peer peer = 6;
    */
-  io.grpc.binarylog.PeerOrBuilder getPeerOrBuilder();
+  io.grpc.binarylog.v1alpha.PeerOrBuilder getPeerOrBuilder();
 
   /**
    * 
@@ -262,5 +262,5 @@ public interface GrpcLogEntryOrBuilder extends
    */
   int getSequenceIdWithinCall();
 
-  public io.grpc.binarylog.GrpcLogEntry.PayloadCase getPayloadCase();
+  public io.grpc.binarylog.v1alpha.GrpcLogEntry.PayloadCase getPayloadCase();
 }
diff --git a/services/src/generated/main/java/io/grpc/binarylog/Message.java b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/Message.java
similarity index 84%
rename from services/src/generated/main/java/io/grpc/binarylog/Message.java
rename to services/src/generated/main/java/io/grpc/binarylog/v1alpha/Message.java
index 46f77c48da..590b1763f4 100644
--- a/services/src/generated/main/java/io/grpc/binarylog/Message.java
+++ b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/Message.java
@@ -1,7 +1,7 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
-// source: io/grpc/binarylog.proto
+// source: grpc/binlog/v1alpha/binarylog.proto
 
-package io.grpc.binarylog;
+package io.grpc.binarylog.v1alpha;
 
 /**
  * 
@@ -85,14 +85,14 @@ private static final long serialVersionUID = 0L;
   }
   public static final com.google.protobuf.Descriptors.Descriptor
       getDescriptor() {
-    return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Message_descriptor;
+    return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Message_descriptor;
   }
 
   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
       internalGetFieldAccessorTable() {
-    return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Message_fieldAccessorTable
+    return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Message_fieldAccessorTable
         .ensureFieldAccessorsInitialized(
-            io.grpc.binarylog.Message.class, io.grpc.binarylog.Message.Builder.class);
+            io.grpc.binarylog.v1alpha.Message.class, io.grpc.binarylog.v1alpha.Message.Builder.class);
   }
 
   public static final int FLAGS_FIELD_NUMBER = 1;
@@ -190,10 +190,10 @@ private static final long serialVersionUID = 0L;
     if (obj == this) {
      return true;
     }
-    if (!(obj instanceof io.grpc.binarylog.Message)) {
+    if (!(obj instanceof io.grpc.binarylog.v1alpha.Message)) {
       return super.equals(obj);
     }
-    io.grpc.binarylog.Message other = (io.grpc.binarylog.Message) obj;
+    io.grpc.binarylog.v1alpha.Message other = (io.grpc.binarylog.v1alpha.Message) obj;
 
     boolean result = true;
     result = result && (getFlags()
@@ -224,69 +224,69 @@ private static final long serialVersionUID = 0L;
     return hash;
   }
 
-  public static io.grpc.binarylog.Message parseFrom(
+  public static io.grpc.binarylog.v1alpha.Message parseFrom(
       java.nio.ByteBuffer data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.Message parseFrom(
+  public static io.grpc.binarylog.v1alpha.Message parseFrom(
       java.nio.ByteBuffer data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.Message parseFrom(
+  public static io.grpc.binarylog.v1alpha.Message parseFrom(
       com.google.protobuf.ByteString data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.Message parseFrom(
+  public static io.grpc.binarylog.v1alpha.Message parseFrom(
       com.google.protobuf.ByteString data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.Message parseFrom(byte[] data)
+  public static io.grpc.binarylog.v1alpha.Message parseFrom(byte[] data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.Message parseFrom(
+  public static io.grpc.binarylog.v1alpha.Message parseFrom(
       byte[] data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.Message parseFrom(java.io.InputStream input)
+  public static io.grpc.binarylog.v1alpha.Message parseFrom(java.io.InputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.Message parseFrom(
+  public static io.grpc.binarylog.v1alpha.Message parseFrom(
       java.io.InputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input, extensionRegistry);
   }
-  public static io.grpc.binarylog.Message parseDelimitedFrom(java.io.InputStream input)
+  public static io.grpc.binarylog.v1alpha.Message parseDelimitedFrom(java.io.InputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseDelimitedWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.Message parseDelimitedFrom(
+  public static io.grpc.binarylog.v1alpha.Message parseDelimitedFrom(
       java.io.InputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
   }
-  public static io.grpc.binarylog.Message parseFrom(
+  public static io.grpc.binarylog.v1alpha.Message parseFrom(
       com.google.protobuf.CodedInputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.Message parseFrom(
+  public static io.grpc.binarylog.v1alpha.Message parseFrom(
       com.google.protobuf.CodedInputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
@@ -298,7 +298,7 @@ private static final long serialVersionUID = 0L;
   public static Builder newBuilder() {
     return DEFAULT_INSTANCE.toBuilder();
   }
-  public static Builder newBuilder(io.grpc.binarylog.Message prototype) {
+  public static Builder newBuilder(io.grpc.binarylog.v1alpha.Message prototype) {
     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
   }
   public Builder toBuilder() {
@@ -322,20 +322,20 @@ private static final long serialVersionUID = 0L;
   public static final class Builder extends
       com.google.protobuf.GeneratedMessageV3.Builder implements
       // @@protoc_insertion_point(builder_implements:grpc.binarylog.v1alpha.Message)
-      io.grpc.binarylog.MessageOrBuilder {
+      io.grpc.binarylog.v1alpha.MessageOrBuilder {
     public static final com.google.protobuf.Descriptors.Descriptor
         getDescriptor() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Message_descriptor;
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Message_descriptor;
     }
 
     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
         internalGetFieldAccessorTable() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Message_fieldAccessorTable
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Message_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
-              io.grpc.binarylog.Message.class, io.grpc.binarylog.Message.Builder.class);
+              io.grpc.binarylog.v1alpha.Message.class, io.grpc.binarylog.v1alpha.Message.Builder.class);
     }
 
-    // Construct using io.grpc.binarylog.Message.newBuilder()
+    // Construct using io.grpc.binarylog.v1alpha.Message.newBuilder()
     private Builder() {
       maybeForceBuilderInitialization();
     }
@@ -363,23 +363,23 @@ private static final long serialVersionUID = 0L;
 
     public com.google.protobuf.Descriptors.Descriptor
         getDescriptorForType() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Message_descriptor;
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Message_descriptor;
     }
 
-    public io.grpc.binarylog.Message getDefaultInstanceForType() {
-      return io.grpc.binarylog.Message.getDefaultInstance();
+    public io.grpc.binarylog.v1alpha.Message getDefaultInstanceForType() {
+      return io.grpc.binarylog.v1alpha.Message.getDefaultInstance();
     }
 
-    public io.grpc.binarylog.Message build() {
-      io.grpc.binarylog.Message result = buildPartial();
+    public io.grpc.binarylog.v1alpha.Message build() {
+      io.grpc.binarylog.v1alpha.Message result = buildPartial();
       if (!result.isInitialized()) {
         throw newUninitializedMessageException(result);
       }
       return result;
     }
 
-    public io.grpc.binarylog.Message buildPartial() {
-      io.grpc.binarylog.Message result = new io.grpc.binarylog.Message(this);
+    public io.grpc.binarylog.v1alpha.Message buildPartial() {
+      io.grpc.binarylog.v1alpha.Message result = new io.grpc.binarylog.v1alpha.Message(this);
       result.flags_ = flags_;
       result.length_ = length_;
       result.data_ = data_;
@@ -414,16 +414,16 @@ private static final long serialVersionUID = 0L;
       return (Builder) super.addRepeatedField(field, value);
     }
     public Builder mergeFrom(com.google.protobuf.Message other) {
-      if (other instanceof io.grpc.binarylog.Message) {
-        return mergeFrom((io.grpc.binarylog.Message)other);
+      if (other instanceof io.grpc.binarylog.v1alpha.Message) {
+        return mergeFrom((io.grpc.binarylog.v1alpha.Message)other);
       } else {
         super.mergeFrom(other);
         return this;
       }
     }
 
-    public Builder mergeFrom(io.grpc.binarylog.Message other) {
-      if (other == io.grpc.binarylog.Message.getDefaultInstance()) return this;
+    public Builder mergeFrom(io.grpc.binarylog.v1alpha.Message other) {
+      if (other == io.grpc.binarylog.v1alpha.Message.getDefaultInstance()) return this;
       if (other.getFlags() != 0) {
         setFlags(other.getFlags());
       }
@@ -446,11 +446,11 @@ private static final long serialVersionUID = 0L;
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      io.grpc.binarylog.Message parsedMessage = null;
+      io.grpc.binarylog.v1alpha.Message parsedMessage = null;
       try {
         parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
-        parsedMessage = (io.grpc.binarylog.Message) e.getUnfinishedMessage();
+        parsedMessage = (io.grpc.binarylog.v1alpha.Message) e.getUnfinishedMessage();
         throw e.unwrapIOException();
       } finally {
         if (parsedMessage != null) {
@@ -606,12 +606,12 @@ private static final long serialVersionUID = 0L;
   }
 
   // @@protoc_insertion_point(class_scope:grpc.binarylog.v1alpha.Message)
-  private static final io.grpc.binarylog.Message DEFAULT_INSTANCE;
+  private static final io.grpc.binarylog.v1alpha.Message DEFAULT_INSTANCE;
   static {
-    DEFAULT_INSTANCE = new io.grpc.binarylog.Message();
+    DEFAULT_INSTANCE = new io.grpc.binarylog.v1alpha.Message();
   }
 
-  public static io.grpc.binarylog.Message getDefaultInstance() {
+  public static io.grpc.binarylog.v1alpha.Message getDefaultInstance() {
     return DEFAULT_INSTANCE;
   }
 
@@ -634,7 +634,7 @@ private static final long serialVersionUID = 0L;
     return PARSER;
   }
 
-  public io.grpc.binarylog.Message getDefaultInstanceForType() {
+  public io.grpc.binarylog.v1alpha.Message getDefaultInstanceForType() {
     return DEFAULT_INSTANCE;
   }
 
diff --git a/services/src/generated/main/java/io/grpc/binarylog/MessageOrBuilder.java b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/MessageOrBuilder.java
similarity index 92%
rename from services/src/generated/main/java/io/grpc/binarylog/MessageOrBuilder.java
rename to services/src/generated/main/java/io/grpc/binarylog/v1alpha/MessageOrBuilder.java
index 4dff0d3431..6ac17a7ff4 100644
--- a/services/src/generated/main/java/io/grpc/binarylog/MessageOrBuilder.java
+++ b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/MessageOrBuilder.java
@@ -1,7 +1,7 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
-// source: io/grpc/binarylog.proto
+// source: grpc/binlog/v1alpha/binarylog.proto
 
-package io.grpc.binarylog;
+package io.grpc.binarylog.v1alpha;
 
 public interface MessageOrBuilder extends
     // @@protoc_insertion_point(interface_extends:grpc.binarylog.v1alpha.Message)
diff --git a/services/src/generated/main/java/io/grpc/binarylog/Metadata.java b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/Metadata.java
similarity index 78%
rename from services/src/generated/main/java/io/grpc/binarylog/Metadata.java
rename to services/src/generated/main/java/io/grpc/binarylog/v1alpha/Metadata.java
index c5d6a476b4..25ecca1292 100644
--- a/services/src/generated/main/java/io/grpc/binarylog/Metadata.java
+++ b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/Metadata.java
@@ -1,7 +1,7 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
-// source: io/grpc/binarylog.proto
+// source: grpc/binlog/v1alpha/binarylog.proto
 
-package io.grpc.binarylog;
+package io.grpc.binarylog.v1alpha;
 
 /**
  * 
@@ -9,6 +9,7 @@ package io.grpc.binarylog;
  * SERVER_INIT_METADATA and TRAILING_METADATA
  * Implementations may omit some entries to honor the header limits
  * of GRPC_BINARY_LOG_CONFIG.
+ * 
  * Implementations will not log the following entries, and this is
  * not to be treated as a truncation:
  * - entries handled by grpc that are not user visible, such as those
@@ -66,11 +67,11 @@ private static final long serialVersionUID = 0L;
           }
           case 10: {
             if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
-              entry_ = new java.util.ArrayList();
+              entry_ = new java.util.ArrayList();
               mutable_bitField0_ |= 0x00000001;
             }
             entry_.add(
-                input.readMessage(io.grpc.binarylog.MetadataEntry.parser(), extensionRegistry));
+                input.readMessage(io.grpc.binarylog.v1alpha.MetadataEntry.parser(), extensionRegistry));
             break;
           }
         }
@@ -90,28 +91,28 @@ private static final long serialVersionUID = 0L;
   }
   public static final com.google.protobuf.Descriptors.Descriptor
       getDescriptor() {
-    return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Metadata_descriptor;
+    return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Metadata_descriptor;
   }
 
   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
       internalGetFieldAccessorTable() {
-    return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Metadata_fieldAccessorTable
+    return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Metadata_fieldAccessorTable
         .ensureFieldAccessorsInitialized(
-            io.grpc.binarylog.Metadata.class, io.grpc.binarylog.Metadata.Builder.class);
+            io.grpc.binarylog.v1alpha.Metadata.class, io.grpc.binarylog.v1alpha.Metadata.Builder.class);
   }
 
   public static final int ENTRY_FIELD_NUMBER = 1;
-  private java.util.List entry_;
+  private java.util.List entry_;
   /**
    * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
    */
-  public java.util.List getEntryList() {
+  public java.util.List getEntryList() {
     return entry_;
   }
   /**
    * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
    */
-  public java.util.List 
+  public java.util.List 
       getEntryOrBuilderList() {
     return entry_;
   }
@@ -124,13 +125,13 @@ private static final long serialVersionUID = 0L;
   /**
    * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
    */
-  public io.grpc.binarylog.MetadataEntry getEntry(int index) {
+  public io.grpc.binarylog.v1alpha.MetadataEntry getEntry(int index) {
     return entry_.get(index);
   }
   /**
    * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
    */
-  public io.grpc.binarylog.MetadataEntryOrBuilder getEntryOrBuilder(
+  public io.grpc.binarylog.v1alpha.MetadataEntryOrBuilder getEntryOrBuilder(
       int index) {
     return entry_.get(index);
   }
@@ -172,10 +173,10 @@ private static final long serialVersionUID = 0L;
     if (obj == this) {
      return true;
     }
-    if (!(obj instanceof io.grpc.binarylog.Metadata)) {
+    if (!(obj instanceof io.grpc.binarylog.v1alpha.Metadata)) {
       return super.equals(obj);
     }
-    io.grpc.binarylog.Metadata other = (io.grpc.binarylog.Metadata) obj;
+    io.grpc.binarylog.v1alpha.Metadata other = (io.grpc.binarylog.v1alpha.Metadata) obj;
 
     boolean result = true;
     result = result && getEntryList()
@@ -200,69 +201,69 @@ private static final long serialVersionUID = 0L;
     return hash;
   }
 
-  public static io.grpc.binarylog.Metadata parseFrom(
+  public static io.grpc.binarylog.v1alpha.Metadata parseFrom(
       java.nio.ByteBuffer data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.Metadata parseFrom(
+  public static io.grpc.binarylog.v1alpha.Metadata parseFrom(
       java.nio.ByteBuffer data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.Metadata parseFrom(
+  public static io.grpc.binarylog.v1alpha.Metadata parseFrom(
       com.google.protobuf.ByteString data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.Metadata parseFrom(
+  public static io.grpc.binarylog.v1alpha.Metadata parseFrom(
       com.google.protobuf.ByteString data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.Metadata parseFrom(byte[] data)
+  public static io.grpc.binarylog.v1alpha.Metadata parseFrom(byte[] data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.Metadata parseFrom(
+  public static io.grpc.binarylog.v1alpha.Metadata parseFrom(
       byte[] data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.Metadata parseFrom(java.io.InputStream input)
+  public static io.grpc.binarylog.v1alpha.Metadata parseFrom(java.io.InputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.Metadata parseFrom(
+  public static io.grpc.binarylog.v1alpha.Metadata parseFrom(
       java.io.InputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input, extensionRegistry);
   }
-  public static io.grpc.binarylog.Metadata parseDelimitedFrom(java.io.InputStream input)
+  public static io.grpc.binarylog.v1alpha.Metadata parseDelimitedFrom(java.io.InputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseDelimitedWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.Metadata parseDelimitedFrom(
+  public static io.grpc.binarylog.v1alpha.Metadata parseDelimitedFrom(
       java.io.InputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
   }
-  public static io.grpc.binarylog.Metadata parseFrom(
+  public static io.grpc.binarylog.v1alpha.Metadata parseFrom(
       com.google.protobuf.CodedInputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.Metadata parseFrom(
+  public static io.grpc.binarylog.v1alpha.Metadata parseFrom(
       com.google.protobuf.CodedInputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
@@ -274,7 +275,7 @@ private static final long serialVersionUID = 0L;
   public static Builder newBuilder() {
     return DEFAULT_INSTANCE.toBuilder();
   }
-  public static Builder newBuilder(io.grpc.binarylog.Metadata prototype) {
+  public static Builder newBuilder(io.grpc.binarylog.v1alpha.Metadata prototype) {
     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
   }
   public Builder toBuilder() {
@@ -294,6 +295,7 @@ private static final long serialVersionUID = 0L;
    * SERVER_INIT_METADATA and TRAILING_METADATA
    * Implementations may omit some entries to honor the header limits
    * of GRPC_BINARY_LOG_CONFIG.
+   * 
    * Implementations will not log the following entries, and this is
    * not to be treated as a truncation:
    * - entries handled by grpc that are not user visible, such as those
@@ -308,20 +310,20 @@ private static final long serialVersionUID = 0L;
   public static final class Builder extends
       com.google.protobuf.GeneratedMessageV3.Builder implements
       // @@protoc_insertion_point(builder_implements:grpc.binarylog.v1alpha.Metadata)
-      io.grpc.binarylog.MetadataOrBuilder {
+      io.grpc.binarylog.v1alpha.MetadataOrBuilder {
     public static final com.google.protobuf.Descriptors.Descriptor
         getDescriptor() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Metadata_descriptor;
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Metadata_descriptor;
     }
 
     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
         internalGetFieldAccessorTable() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Metadata_fieldAccessorTable
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Metadata_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
-              io.grpc.binarylog.Metadata.class, io.grpc.binarylog.Metadata.Builder.class);
+              io.grpc.binarylog.v1alpha.Metadata.class, io.grpc.binarylog.v1alpha.Metadata.Builder.class);
     }
 
-    // Construct using io.grpc.binarylog.Metadata.newBuilder()
+    // Construct using io.grpc.binarylog.v1alpha.Metadata.newBuilder()
     private Builder() {
       maybeForceBuilderInitialization();
     }
@@ -350,23 +352,23 @@ private static final long serialVersionUID = 0L;
 
     public com.google.protobuf.Descriptors.Descriptor
         getDescriptorForType() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Metadata_descriptor;
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Metadata_descriptor;
     }
 
-    public io.grpc.binarylog.Metadata getDefaultInstanceForType() {
-      return io.grpc.binarylog.Metadata.getDefaultInstance();
+    public io.grpc.binarylog.v1alpha.Metadata getDefaultInstanceForType() {
+      return io.grpc.binarylog.v1alpha.Metadata.getDefaultInstance();
     }
 
-    public io.grpc.binarylog.Metadata build() {
-      io.grpc.binarylog.Metadata result = buildPartial();
+    public io.grpc.binarylog.v1alpha.Metadata build() {
+      io.grpc.binarylog.v1alpha.Metadata result = buildPartial();
       if (!result.isInitialized()) {
         throw newUninitializedMessageException(result);
       }
       return result;
     }
 
-    public io.grpc.binarylog.Metadata buildPartial() {
-      io.grpc.binarylog.Metadata result = new io.grpc.binarylog.Metadata(this);
+    public io.grpc.binarylog.v1alpha.Metadata buildPartial() {
+      io.grpc.binarylog.v1alpha.Metadata result = new io.grpc.binarylog.v1alpha.Metadata(this);
       int from_bitField0_ = bitField0_;
       if (entryBuilder_ == null) {
         if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -408,16 +410,16 @@ private static final long serialVersionUID = 0L;
       return (Builder) super.addRepeatedField(field, value);
     }
     public Builder mergeFrom(com.google.protobuf.Message other) {
-      if (other instanceof io.grpc.binarylog.Metadata) {
-        return mergeFrom((io.grpc.binarylog.Metadata)other);
+      if (other instanceof io.grpc.binarylog.v1alpha.Metadata) {
+        return mergeFrom((io.grpc.binarylog.v1alpha.Metadata)other);
       } else {
         super.mergeFrom(other);
         return this;
       }
     }
 
-    public Builder mergeFrom(io.grpc.binarylog.Metadata other) {
-      if (other == io.grpc.binarylog.Metadata.getDefaultInstance()) return this;
+    public Builder mergeFrom(io.grpc.binarylog.v1alpha.Metadata other) {
+      if (other == io.grpc.binarylog.v1alpha.Metadata.getDefaultInstance()) return this;
       if (entryBuilder_ == null) {
         if (!other.entry_.isEmpty()) {
           if (entry_.isEmpty()) {
@@ -457,11 +459,11 @@ private static final long serialVersionUID = 0L;
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      io.grpc.binarylog.Metadata parsedMessage = null;
+      io.grpc.binarylog.v1alpha.Metadata parsedMessage = null;
       try {
         parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
-        parsedMessage = (io.grpc.binarylog.Metadata) e.getUnfinishedMessage();
+        parsedMessage = (io.grpc.binarylog.v1alpha.Metadata) e.getUnfinishedMessage();
         throw e.unwrapIOException();
       } finally {
         if (parsedMessage != null) {
@@ -472,22 +474,22 @@ private static final long serialVersionUID = 0L;
     }
     private int bitField0_;
 
-    private java.util.List entry_ =
+    private java.util.List entry_ =
       java.util.Collections.emptyList();
     private void ensureEntryIsMutable() {
       if (!((bitField0_ & 0x00000001) == 0x00000001)) {
-        entry_ = new java.util.ArrayList(entry_);
+        entry_ = new java.util.ArrayList(entry_);
         bitField0_ |= 0x00000001;
        }
     }
 
     private com.google.protobuf.RepeatedFieldBuilderV3<
-        io.grpc.binarylog.MetadataEntry, io.grpc.binarylog.MetadataEntry.Builder, io.grpc.binarylog.MetadataEntryOrBuilder> entryBuilder_;
+        io.grpc.binarylog.v1alpha.MetadataEntry, io.grpc.binarylog.v1alpha.MetadataEntry.Builder, io.grpc.binarylog.v1alpha.MetadataEntryOrBuilder> entryBuilder_;
 
     /**
      * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
      */
-    public java.util.List getEntryList() {
+    public java.util.List getEntryList() {
       if (entryBuilder_ == null) {
         return java.util.Collections.unmodifiableList(entry_);
       } else {
@@ -507,7 +509,7 @@ private static final long serialVersionUID = 0L;
     /**
      * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
      */
-    public io.grpc.binarylog.MetadataEntry getEntry(int index) {
+    public io.grpc.binarylog.v1alpha.MetadataEntry getEntry(int index) {
       if (entryBuilder_ == null) {
         return entry_.get(index);
       } else {
@@ -518,7 +520,7 @@ private static final long serialVersionUID = 0L;
      * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
      */
     public Builder setEntry(
-        int index, io.grpc.binarylog.MetadataEntry value) {
+        int index, io.grpc.binarylog.v1alpha.MetadataEntry value) {
       if (entryBuilder_ == null) {
         if (value == null) {
           throw new NullPointerException();
@@ -535,7 +537,7 @@ private static final long serialVersionUID = 0L;
      * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
      */
     public Builder setEntry(
-        int index, io.grpc.binarylog.MetadataEntry.Builder builderForValue) {
+        int index, io.grpc.binarylog.v1alpha.MetadataEntry.Builder builderForValue) {
       if (entryBuilder_ == null) {
         ensureEntryIsMutable();
         entry_.set(index, builderForValue.build());
@@ -548,7 +550,7 @@ private static final long serialVersionUID = 0L;
     /**
      * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
      */
-    public Builder addEntry(io.grpc.binarylog.MetadataEntry value) {
+    public Builder addEntry(io.grpc.binarylog.v1alpha.MetadataEntry value) {
       if (entryBuilder_ == null) {
         if (value == null) {
           throw new NullPointerException();
@@ -565,7 +567,7 @@ private static final long serialVersionUID = 0L;
      * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
      */
     public Builder addEntry(
-        int index, io.grpc.binarylog.MetadataEntry value) {
+        int index, io.grpc.binarylog.v1alpha.MetadataEntry value) {
       if (entryBuilder_ == null) {
         if (value == null) {
           throw new NullPointerException();
@@ -582,7 +584,7 @@ private static final long serialVersionUID = 0L;
      * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
      */
     public Builder addEntry(
-        io.grpc.binarylog.MetadataEntry.Builder builderForValue) {
+        io.grpc.binarylog.v1alpha.MetadataEntry.Builder builderForValue) {
       if (entryBuilder_ == null) {
         ensureEntryIsMutable();
         entry_.add(builderForValue.build());
@@ -596,7 +598,7 @@ private static final long serialVersionUID = 0L;
      * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
      */
     public Builder addEntry(
-        int index, io.grpc.binarylog.MetadataEntry.Builder builderForValue) {
+        int index, io.grpc.binarylog.v1alpha.MetadataEntry.Builder builderForValue) {
       if (entryBuilder_ == null) {
         ensureEntryIsMutable();
         entry_.add(index, builderForValue.build());
@@ -610,7 +612,7 @@ private static final long serialVersionUID = 0L;
      * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
      */
     public Builder addAllEntry(
-        java.lang.Iterable values) {
+        java.lang.Iterable values) {
       if (entryBuilder_ == null) {
         ensureEntryIsMutable();
         com.google.protobuf.AbstractMessageLite.Builder.addAll(
@@ -650,14 +652,14 @@ private static final long serialVersionUID = 0L;
     /**
      * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
      */
-    public io.grpc.binarylog.MetadataEntry.Builder getEntryBuilder(
+    public io.grpc.binarylog.v1alpha.MetadataEntry.Builder getEntryBuilder(
         int index) {
       return getEntryFieldBuilder().getBuilder(index);
     }
     /**
      * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
      */
-    public io.grpc.binarylog.MetadataEntryOrBuilder getEntryOrBuilder(
+    public io.grpc.binarylog.v1alpha.MetadataEntryOrBuilder getEntryOrBuilder(
         int index) {
       if (entryBuilder_ == null) {
         return entry_.get(index);  } else {
@@ -667,7 +669,7 @@ private static final long serialVersionUID = 0L;
     /**
      * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
      */
-    public java.util.List 
+    public java.util.List 
          getEntryOrBuilderList() {
       if (entryBuilder_ != null) {
         return entryBuilder_.getMessageOrBuilderList();
@@ -678,31 +680,31 @@ private static final long serialVersionUID = 0L;
     /**
      * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
      */
-    public io.grpc.binarylog.MetadataEntry.Builder addEntryBuilder() {
+    public io.grpc.binarylog.v1alpha.MetadataEntry.Builder addEntryBuilder() {
       return getEntryFieldBuilder().addBuilder(
-          io.grpc.binarylog.MetadataEntry.getDefaultInstance());
+          io.grpc.binarylog.v1alpha.MetadataEntry.getDefaultInstance());
     }
     /**
      * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
      */
-    public io.grpc.binarylog.MetadataEntry.Builder addEntryBuilder(
+    public io.grpc.binarylog.v1alpha.MetadataEntry.Builder addEntryBuilder(
         int index) {
       return getEntryFieldBuilder().addBuilder(
-          index, io.grpc.binarylog.MetadataEntry.getDefaultInstance());
+          index, io.grpc.binarylog.v1alpha.MetadataEntry.getDefaultInstance());
     }
     /**
      * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
      */
-    public java.util.List 
+    public java.util.List 
          getEntryBuilderList() {
       return getEntryFieldBuilder().getBuilderList();
     }
     private com.google.protobuf.RepeatedFieldBuilderV3<
-        io.grpc.binarylog.MetadataEntry, io.grpc.binarylog.MetadataEntry.Builder, io.grpc.binarylog.MetadataEntryOrBuilder> 
+        io.grpc.binarylog.v1alpha.MetadataEntry, io.grpc.binarylog.v1alpha.MetadataEntry.Builder, io.grpc.binarylog.v1alpha.MetadataEntryOrBuilder> 
         getEntryFieldBuilder() {
       if (entryBuilder_ == null) {
         entryBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
-            io.grpc.binarylog.MetadataEntry, io.grpc.binarylog.MetadataEntry.Builder, io.grpc.binarylog.MetadataEntryOrBuilder>(
+            io.grpc.binarylog.v1alpha.MetadataEntry, io.grpc.binarylog.v1alpha.MetadataEntry.Builder, io.grpc.binarylog.v1alpha.MetadataEntryOrBuilder>(
                 entry_,
                 ((bitField0_ & 0x00000001) == 0x00000001),
                 getParentForChildren(),
@@ -726,12 +728,12 @@ private static final long serialVersionUID = 0L;
   }
 
   // @@protoc_insertion_point(class_scope:grpc.binarylog.v1alpha.Metadata)
-  private static final io.grpc.binarylog.Metadata DEFAULT_INSTANCE;
+  private static final io.grpc.binarylog.v1alpha.Metadata DEFAULT_INSTANCE;
   static {
-    DEFAULT_INSTANCE = new io.grpc.binarylog.Metadata();
+    DEFAULT_INSTANCE = new io.grpc.binarylog.v1alpha.Metadata();
   }
 
-  public static io.grpc.binarylog.Metadata getDefaultInstance() {
+  public static io.grpc.binarylog.v1alpha.Metadata getDefaultInstance() {
     return DEFAULT_INSTANCE;
   }
 
@@ -754,7 +756,7 @@ private static final long serialVersionUID = 0L;
     return PARSER;
   }
 
-  public io.grpc.binarylog.Metadata getDefaultInstanceForType() {
+  public io.grpc.binarylog.v1alpha.Metadata getDefaultInstanceForType() {
     return DEFAULT_INSTANCE;
   }
 
diff --git a/services/src/generated/main/java/io/grpc/binarylog/MetadataEntry.java b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/MetadataEntry.java
similarity index 80%
rename from services/src/generated/main/java/io/grpc/binarylog/MetadataEntry.java
rename to services/src/generated/main/java/io/grpc/binarylog/v1alpha/MetadataEntry.java
index 080d549b2a..f93f003b58 100644
--- a/services/src/generated/main/java/io/grpc/binarylog/MetadataEntry.java
+++ b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/MetadataEntry.java
@@ -1,7 +1,7 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
-// source: io/grpc/binarylog.proto
+// source: grpc/binlog/v1alpha/binarylog.proto
 
-package io.grpc.binarylog;
+package io.grpc.binarylog.v1alpha;
 
 /**
  * 
@@ -79,14 +79,14 @@ private static final long serialVersionUID = 0L;
   }
   public static final com.google.protobuf.Descriptors.Descriptor
       getDescriptor() {
-    return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_MetadataEntry_descriptor;
+    return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_MetadataEntry_descriptor;
   }
 
   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
       internalGetFieldAccessorTable() {
-    return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_MetadataEntry_fieldAccessorTable
+    return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_MetadataEntry_fieldAccessorTable
         .ensureFieldAccessorsInitialized(
-            io.grpc.binarylog.MetadataEntry.class, io.grpc.binarylog.MetadataEntry.Builder.class);
+            io.grpc.binarylog.v1alpha.MetadataEntry.class, io.grpc.binarylog.v1alpha.MetadataEntry.Builder.class);
   }
 
   public static final int KEY_FIELD_NUMBER = 1;
@@ -151,10 +151,10 @@ private static final long serialVersionUID = 0L;
     if (obj == this) {
      return true;
     }
-    if (!(obj instanceof io.grpc.binarylog.MetadataEntry)) {
+    if (!(obj instanceof io.grpc.binarylog.v1alpha.MetadataEntry)) {
       return super.equals(obj);
     }
-    io.grpc.binarylog.MetadataEntry other = (io.grpc.binarylog.MetadataEntry) obj;
+    io.grpc.binarylog.v1alpha.MetadataEntry other = (io.grpc.binarylog.v1alpha.MetadataEntry) obj;
 
     boolean result = true;
     result = result && getKey()
@@ -181,69 +181,69 @@ private static final long serialVersionUID = 0L;
     return hash;
   }
 
-  public static io.grpc.binarylog.MetadataEntry parseFrom(
+  public static io.grpc.binarylog.v1alpha.MetadataEntry parseFrom(
       java.nio.ByteBuffer data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.MetadataEntry parseFrom(
+  public static io.grpc.binarylog.v1alpha.MetadataEntry parseFrom(
       java.nio.ByteBuffer data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.MetadataEntry parseFrom(
+  public static io.grpc.binarylog.v1alpha.MetadataEntry parseFrom(
       com.google.protobuf.ByteString data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.MetadataEntry parseFrom(
+  public static io.grpc.binarylog.v1alpha.MetadataEntry parseFrom(
       com.google.protobuf.ByteString data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.MetadataEntry parseFrom(byte[] data)
+  public static io.grpc.binarylog.v1alpha.MetadataEntry parseFrom(byte[] data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.MetadataEntry parseFrom(
+  public static io.grpc.binarylog.v1alpha.MetadataEntry parseFrom(
       byte[] data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.MetadataEntry parseFrom(java.io.InputStream input)
+  public static io.grpc.binarylog.v1alpha.MetadataEntry parseFrom(java.io.InputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.MetadataEntry parseFrom(
+  public static io.grpc.binarylog.v1alpha.MetadataEntry parseFrom(
       java.io.InputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input, extensionRegistry);
   }
-  public static io.grpc.binarylog.MetadataEntry parseDelimitedFrom(java.io.InputStream input)
+  public static io.grpc.binarylog.v1alpha.MetadataEntry parseDelimitedFrom(java.io.InputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseDelimitedWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.MetadataEntry parseDelimitedFrom(
+  public static io.grpc.binarylog.v1alpha.MetadataEntry parseDelimitedFrom(
       java.io.InputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
   }
-  public static io.grpc.binarylog.MetadataEntry parseFrom(
+  public static io.grpc.binarylog.v1alpha.MetadataEntry parseFrom(
       com.google.protobuf.CodedInputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.MetadataEntry parseFrom(
+  public static io.grpc.binarylog.v1alpha.MetadataEntry parseFrom(
       com.google.protobuf.CodedInputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
@@ -255,7 +255,7 @@ private static final long serialVersionUID = 0L;
   public static Builder newBuilder() {
     return DEFAULT_INSTANCE.toBuilder();
   }
-  public static Builder newBuilder(io.grpc.binarylog.MetadataEntry prototype) {
+  public static Builder newBuilder(io.grpc.binarylog.v1alpha.MetadataEntry prototype) {
     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
   }
   public Builder toBuilder() {
@@ -279,20 +279,20 @@ private static final long serialVersionUID = 0L;
   public static final class Builder extends
       com.google.protobuf.GeneratedMessageV3.Builder implements
       // @@protoc_insertion_point(builder_implements:grpc.binarylog.v1alpha.MetadataEntry)
-      io.grpc.binarylog.MetadataEntryOrBuilder {
+      io.grpc.binarylog.v1alpha.MetadataEntryOrBuilder {
     public static final com.google.protobuf.Descriptors.Descriptor
         getDescriptor() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_MetadataEntry_descriptor;
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_MetadataEntry_descriptor;
     }
 
     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
         internalGetFieldAccessorTable() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_MetadataEntry_fieldAccessorTable
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_MetadataEntry_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
-              io.grpc.binarylog.MetadataEntry.class, io.grpc.binarylog.MetadataEntry.Builder.class);
+              io.grpc.binarylog.v1alpha.MetadataEntry.class, io.grpc.binarylog.v1alpha.MetadataEntry.Builder.class);
     }
 
-    // Construct using io.grpc.binarylog.MetadataEntry.newBuilder()
+    // Construct using io.grpc.binarylog.v1alpha.MetadataEntry.newBuilder()
     private Builder() {
       maybeForceBuilderInitialization();
     }
@@ -318,23 +318,23 @@ private static final long serialVersionUID = 0L;
 
     public com.google.protobuf.Descriptors.Descriptor
         getDescriptorForType() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_MetadataEntry_descriptor;
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_MetadataEntry_descriptor;
     }
 
-    public io.grpc.binarylog.MetadataEntry getDefaultInstanceForType() {
-      return io.grpc.binarylog.MetadataEntry.getDefaultInstance();
+    public io.grpc.binarylog.v1alpha.MetadataEntry getDefaultInstanceForType() {
+      return io.grpc.binarylog.v1alpha.MetadataEntry.getDefaultInstance();
     }
 
-    public io.grpc.binarylog.MetadataEntry build() {
-      io.grpc.binarylog.MetadataEntry result = buildPartial();
+    public io.grpc.binarylog.v1alpha.MetadataEntry build() {
+      io.grpc.binarylog.v1alpha.MetadataEntry result = buildPartial();
       if (!result.isInitialized()) {
         throw newUninitializedMessageException(result);
       }
       return result;
     }
 
-    public io.grpc.binarylog.MetadataEntry buildPartial() {
-      io.grpc.binarylog.MetadataEntry result = new io.grpc.binarylog.MetadataEntry(this);
+    public io.grpc.binarylog.v1alpha.MetadataEntry buildPartial() {
+      io.grpc.binarylog.v1alpha.MetadataEntry result = new io.grpc.binarylog.v1alpha.MetadataEntry(this);
       result.key_ = key_;
       result.value_ = value_;
       onBuilt();
@@ -368,16 +368,16 @@ private static final long serialVersionUID = 0L;
       return (Builder) super.addRepeatedField(field, value);
     }
     public Builder mergeFrom(com.google.protobuf.Message other) {
-      if (other instanceof io.grpc.binarylog.MetadataEntry) {
-        return mergeFrom((io.grpc.binarylog.MetadataEntry)other);
+      if (other instanceof io.grpc.binarylog.v1alpha.MetadataEntry) {
+        return mergeFrom((io.grpc.binarylog.v1alpha.MetadataEntry)other);
       } else {
         super.mergeFrom(other);
         return this;
       }
     }
 
-    public Builder mergeFrom(io.grpc.binarylog.MetadataEntry other) {
-      if (other == io.grpc.binarylog.MetadataEntry.getDefaultInstance()) return this;
+    public Builder mergeFrom(io.grpc.binarylog.v1alpha.MetadataEntry other) {
+      if (other == io.grpc.binarylog.v1alpha.MetadataEntry.getDefaultInstance()) return this;
       if (other.getKey() != com.google.protobuf.ByteString.EMPTY) {
         setKey(other.getKey());
       }
@@ -397,11 +397,11 @@ private static final long serialVersionUID = 0L;
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      io.grpc.binarylog.MetadataEntry parsedMessage = null;
+      io.grpc.binarylog.v1alpha.MetadataEntry parsedMessage = null;
       try {
         parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
-        parsedMessage = (io.grpc.binarylog.MetadataEntry) e.getUnfinishedMessage();
+        parsedMessage = (io.grpc.binarylog.v1alpha.MetadataEntry) e.getUnfinishedMessage();
         throw e.unwrapIOException();
       } finally {
         if (parsedMessage != null) {
@@ -483,12 +483,12 @@ private static final long serialVersionUID = 0L;
   }
 
   // @@protoc_insertion_point(class_scope:grpc.binarylog.v1alpha.MetadataEntry)
-  private static final io.grpc.binarylog.MetadataEntry DEFAULT_INSTANCE;
+  private static final io.grpc.binarylog.v1alpha.MetadataEntry DEFAULT_INSTANCE;
   static {
-    DEFAULT_INSTANCE = new io.grpc.binarylog.MetadataEntry();
+    DEFAULT_INSTANCE = new io.grpc.binarylog.v1alpha.MetadataEntry();
   }
 
-  public static io.grpc.binarylog.MetadataEntry getDefaultInstance() {
+  public static io.grpc.binarylog.v1alpha.MetadataEntry getDefaultInstance() {
     return DEFAULT_INSTANCE;
   }
 
@@ -511,7 +511,7 @@ private static final long serialVersionUID = 0L;
     return PARSER;
   }
 
-  public io.grpc.binarylog.MetadataEntry getDefaultInstanceForType() {
+  public io.grpc.binarylog.v1alpha.MetadataEntry getDefaultInstanceForType() {
     return DEFAULT_INSTANCE;
   }
 
diff --git a/services/src/generated/main/java/io/grpc/binarylog/MetadataEntryOrBuilder.java b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/MetadataEntryOrBuilder.java
similarity index 83%
rename from services/src/generated/main/java/io/grpc/binarylog/MetadataEntryOrBuilder.java
rename to services/src/generated/main/java/io/grpc/binarylog/v1alpha/MetadataEntryOrBuilder.java
index 856f8bc716..78f32a0b5a 100644
--- a/services/src/generated/main/java/io/grpc/binarylog/MetadataEntryOrBuilder.java
+++ b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/MetadataEntryOrBuilder.java
@@ -1,7 +1,7 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
-// source: io/grpc/binarylog.proto
+// source: grpc/binlog/v1alpha/binarylog.proto
 
-package io.grpc.binarylog;
+package io.grpc.binarylog.v1alpha;
 
 public interface MetadataEntryOrBuilder extends
     // @@protoc_insertion_point(interface_extends:grpc.binarylog.v1alpha.MetadataEntry)
diff --git a/services/src/generated/main/java/io/grpc/binarylog/MetadataOrBuilder.java b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/MetadataOrBuilder.java
similarity index 68%
rename from services/src/generated/main/java/io/grpc/binarylog/MetadataOrBuilder.java
rename to services/src/generated/main/java/io/grpc/binarylog/v1alpha/MetadataOrBuilder.java
index 296e90cdbd..75cacfc9b5 100644
--- a/services/src/generated/main/java/io/grpc/binarylog/MetadataOrBuilder.java
+++ b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/MetadataOrBuilder.java
@@ -1,7 +1,7 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
-// source: io/grpc/binarylog.proto
+// source: grpc/binlog/v1alpha/binarylog.proto
 
-package io.grpc.binarylog;
+package io.grpc.binarylog.v1alpha;
 
 public interface MetadataOrBuilder extends
     // @@protoc_insertion_point(interface_extends:grpc.binarylog.v1alpha.Metadata)
@@ -10,12 +10,12 @@ public interface MetadataOrBuilder extends
   /**
    * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
    */
-  java.util.List 
+  java.util.List 
       getEntryList();
   /**
    * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
    */
-  io.grpc.binarylog.MetadataEntry getEntry(int index);
+  io.grpc.binarylog.v1alpha.MetadataEntry getEntry(int index);
   /**
    * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
    */
@@ -23,11 +23,11 @@ public interface MetadataOrBuilder extends
   /**
    * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
    */
-  java.util.List 
+  java.util.List 
       getEntryOrBuilderList();
   /**
    * repeated .grpc.binarylog.v1alpha.MetadataEntry entry = 1;
    */
-  io.grpc.binarylog.MetadataEntryOrBuilder getEntryOrBuilder(
+  io.grpc.binarylog.v1alpha.MetadataEntryOrBuilder getEntryOrBuilder(
       int index);
 }
diff --git a/services/src/generated/main/java/io/grpc/binarylog/Peer.java b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/Peer.java
similarity index 85%
rename from services/src/generated/main/java/io/grpc/binarylog/Peer.java
rename to services/src/generated/main/java/io/grpc/binarylog/v1alpha/Peer.java
index 843affadf0..3a29df086c 100644
--- a/services/src/generated/main/java/io/grpc/binarylog/Peer.java
+++ b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/Peer.java
@@ -1,7 +1,7 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
-// source: io/grpc/binarylog.proto
+// source: grpc/binlog/v1alpha/binarylog.proto
 
-package io.grpc.binarylog;
+package io.grpc.binarylog.v1alpha;
 
 /**
  * 
@@ -93,14 +93,14 @@ private static final long serialVersionUID = 0L;
   }
   public static final com.google.protobuf.Descriptors.Descriptor
       getDescriptor() {
-    return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Peer_descriptor;
+    return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Peer_descriptor;
   }
 
   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
       internalGetFieldAccessorTable() {
-    return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Peer_fieldAccessorTable
+    return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Peer_fieldAccessorTable
         .ensureFieldAccessorsInitialized(
-            io.grpc.binarylog.Peer.class, io.grpc.binarylog.Peer.Builder.class);
+            io.grpc.binarylog.v1alpha.Peer.class, io.grpc.binarylog.v1alpha.Peer.Builder.class);
   }
 
   /**
@@ -219,7 +219,7 @@ private static final long serialVersionUID = 0L;
     }
     public static final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptor() {
-      return io.grpc.binarylog.Peer.getDescriptor().getEnumTypes().get(0);
+      return io.grpc.binarylog.v1alpha.Peer.getDescriptor().getEnumTypes().get(0);
     }
 
     private static final PeerType[] VALUES = values();
@@ -256,9 +256,9 @@ private static final long serialVersionUID = 0L;
   /**
    * .grpc.binarylog.v1alpha.Peer.PeerType peer_type = 1;
    */
-  public io.grpc.binarylog.Peer.PeerType getPeerType() {
-    io.grpc.binarylog.Peer.PeerType result = io.grpc.binarylog.Peer.PeerType.valueOf(peerType_);
-    return result == null ? io.grpc.binarylog.Peer.PeerType.UNRECOGNIZED : result;
+  public io.grpc.binarylog.v1alpha.Peer.PeerType getPeerType() {
+    io.grpc.binarylog.v1alpha.Peer.PeerType result = io.grpc.binarylog.v1alpha.Peer.PeerType.valueOf(peerType_);
+    return result == null ? io.grpc.binarylog.v1alpha.Peer.PeerType.UNRECOGNIZED : result;
   }
 
   public static final int PEER_FIELD_NUMBER = 2;
@@ -333,7 +333,7 @@ private static final long serialVersionUID = 0L;
 
   public void writeTo(com.google.protobuf.CodedOutputStream output)
                       throws java.io.IOException {
-    if (peerType_ != io.grpc.binarylog.Peer.PeerType.UNKNOWN_PEERTYPE.getNumber()) {
+    if (peerType_ != io.grpc.binarylog.v1alpha.Peer.PeerType.UNKNOWN_PEERTYPE.getNumber()) {
       output.writeEnum(1, peerType_);
     }
     if (!peer_.isEmpty()) {
@@ -353,7 +353,7 @@ private static final long serialVersionUID = 0L;
     if (size != -1) return size;
 
     size = 0;
-    if (peerType_ != io.grpc.binarylog.Peer.PeerType.UNKNOWN_PEERTYPE.getNumber()) {
+    if (peerType_ != io.grpc.binarylog.v1alpha.Peer.PeerType.UNKNOWN_PEERTYPE.getNumber()) {
       size += com.google.protobuf.CodedOutputStream
         .computeEnumSize(1, peerType_);
     }
@@ -378,10 +378,10 @@ private static final long serialVersionUID = 0L;
     if (obj == this) {
      return true;
     }
-    if (!(obj instanceof io.grpc.binarylog.Peer)) {
+    if (!(obj instanceof io.grpc.binarylog.v1alpha.Peer)) {
       return super.equals(obj);
     }
-    io.grpc.binarylog.Peer other = (io.grpc.binarylog.Peer) obj;
+    io.grpc.binarylog.v1alpha.Peer other = (io.grpc.binarylog.v1alpha.Peer) obj;
 
     boolean result = true;
     result = result && peerType_ == other.peerType_;
@@ -415,69 +415,69 @@ private static final long serialVersionUID = 0L;
     return hash;
   }
 
-  public static io.grpc.binarylog.Peer parseFrom(
+  public static io.grpc.binarylog.v1alpha.Peer parseFrom(
       java.nio.ByteBuffer data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.Peer parseFrom(
+  public static io.grpc.binarylog.v1alpha.Peer parseFrom(
       java.nio.ByteBuffer data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.Peer parseFrom(
+  public static io.grpc.binarylog.v1alpha.Peer parseFrom(
       com.google.protobuf.ByteString data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.Peer parseFrom(
+  public static io.grpc.binarylog.v1alpha.Peer parseFrom(
       com.google.protobuf.ByteString data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.Peer parseFrom(byte[] data)
+  public static io.grpc.binarylog.v1alpha.Peer parseFrom(byte[] data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.Peer parseFrom(
+  public static io.grpc.binarylog.v1alpha.Peer parseFrom(
       byte[] data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.Peer parseFrom(java.io.InputStream input)
+  public static io.grpc.binarylog.v1alpha.Peer parseFrom(java.io.InputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.Peer parseFrom(
+  public static io.grpc.binarylog.v1alpha.Peer parseFrom(
       java.io.InputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input, extensionRegistry);
   }
-  public static io.grpc.binarylog.Peer parseDelimitedFrom(java.io.InputStream input)
+  public static io.grpc.binarylog.v1alpha.Peer parseDelimitedFrom(java.io.InputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseDelimitedWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.Peer parseDelimitedFrom(
+  public static io.grpc.binarylog.v1alpha.Peer parseDelimitedFrom(
       java.io.InputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
   }
-  public static io.grpc.binarylog.Peer parseFrom(
+  public static io.grpc.binarylog.v1alpha.Peer parseFrom(
       com.google.protobuf.CodedInputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.Peer parseFrom(
+  public static io.grpc.binarylog.v1alpha.Peer parseFrom(
       com.google.protobuf.CodedInputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
@@ -489,7 +489,7 @@ private static final long serialVersionUID = 0L;
   public static Builder newBuilder() {
     return DEFAULT_INSTANCE.toBuilder();
   }
-  public static Builder newBuilder(io.grpc.binarylog.Peer prototype) {
+  public static Builder newBuilder(io.grpc.binarylog.v1alpha.Peer prototype) {
     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
   }
   public Builder toBuilder() {
@@ -513,20 +513,20 @@ private static final long serialVersionUID = 0L;
   public static final class Builder extends
       com.google.protobuf.GeneratedMessageV3.Builder implements
       // @@protoc_insertion_point(builder_implements:grpc.binarylog.v1alpha.Peer)
-      io.grpc.binarylog.PeerOrBuilder {
+      io.grpc.binarylog.v1alpha.PeerOrBuilder {
     public static final com.google.protobuf.Descriptors.Descriptor
         getDescriptor() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Peer_descriptor;
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Peer_descriptor;
     }
 
     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
         internalGetFieldAccessorTable() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Peer_fieldAccessorTable
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Peer_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
-              io.grpc.binarylog.Peer.class, io.grpc.binarylog.Peer.Builder.class);
+              io.grpc.binarylog.v1alpha.Peer.class, io.grpc.binarylog.v1alpha.Peer.Builder.class);
     }
 
-    // Construct using io.grpc.binarylog.Peer.newBuilder()
+    // Construct using io.grpc.binarylog.v1alpha.Peer.newBuilder()
     private Builder() {
       maybeForceBuilderInitialization();
     }
@@ -556,23 +556,23 @@ private static final long serialVersionUID = 0L;
 
     public com.google.protobuf.Descriptors.Descriptor
         getDescriptorForType() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Peer_descriptor;
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Peer_descriptor;
     }
 
-    public io.grpc.binarylog.Peer getDefaultInstanceForType() {
-      return io.grpc.binarylog.Peer.getDefaultInstance();
+    public io.grpc.binarylog.v1alpha.Peer getDefaultInstanceForType() {
+      return io.grpc.binarylog.v1alpha.Peer.getDefaultInstance();
     }
 
-    public io.grpc.binarylog.Peer build() {
-      io.grpc.binarylog.Peer result = buildPartial();
+    public io.grpc.binarylog.v1alpha.Peer build() {
+      io.grpc.binarylog.v1alpha.Peer result = buildPartial();
       if (!result.isInitialized()) {
         throw newUninitializedMessageException(result);
       }
       return result;
     }
 
-    public io.grpc.binarylog.Peer buildPartial() {
-      io.grpc.binarylog.Peer result = new io.grpc.binarylog.Peer(this);
+    public io.grpc.binarylog.v1alpha.Peer buildPartial() {
+      io.grpc.binarylog.v1alpha.Peer result = new io.grpc.binarylog.v1alpha.Peer(this);
       result.peerType_ = peerType_;
       result.peer_ = peer_;
       result.address_ = address_;
@@ -608,16 +608,16 @@ private static final long serialVersionUID = 0L;
       return (Builder) super.addRepeatedField(field, value);
     }
     public Builder mergeFrom(com.google.protobuf.Message other) {
-      if (other instanceof io.grpc.binarylog.Peer) {
-        return mergeFrom((io.grpc.binarylog.Peer)other);
+      if (other instanceof io.grpc.binarylog.v1alpha.Peer) {
+        return mergeFrom((io.grpc.binarylog.v1alpha.Peer)other);
       } else {
         super.mergeFrom(other);
         return this;
       }
     }
 
-    public Builder mergeFrom(io.grpc.binarylog.Peer other) {
-      if (other == io.grpc.binarylog.Peer.getDefaultInstance()) return this;
+    public Builder mergeFrom(io.grpc.binarylog.v1alpha.Peer other) {
+      if (other == io.grpc.binarylog.v1alpha.Peer.getDefaultInstance()) return this;
       if (other.peerType_ != 0) {
         setPeerTypeValue(other.getPeerTypeValue());
       }
@@ -644,11 +644,11 @@ private static final long serialVersionUID = 0L;
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      io.grpc.binarylog.Peer parsedMessage = null;
+      io.grpc.binarylog.v1alpha.Peer parsedMessage = null;
       try {
         parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
-        parsedMessage = (io.grpc.binarylog.Peer) e.getUnfinishedMessage();
+        parsedMessage = (io.grpc.binarylog.v1alpha.Peer) e.getUnfinishedMessage();
         throw e.unwrapIOException();
       } finally {
         if (parsedMessage != null) {
@@ -676,14 +676,14 @@ private static final long serialVersionUID = 0L;
     /**
      * .grpc.binarylog.v1alpha.Peer.PeerType peer_type = 1;
      */
-    public io.grpc.binarylog.Peer.PeerType getPeerType() {
-      io.grpc.binarylog.Peer.PeerType result = io.grpc.binarylog.Peer.PeerType.valueOf(peerType_);
-      return result == null ? io.grpc.binarylog.Peer.PeerType.UNRECOGNIZED : result;
+    public io.grpc.binarylog.v1alpha.Peer.PeerType getPeerType() {
+      io.grpc.binarylog.v1alpha.Peer.PeerType result = io.grpc.binarylog.v1alpha.Peer.PeerType.valueOf(peerType_);
+      return result == null ? io.grpc.binarylog.v1alpha.Peer.PeerType.UNRECOGNIZED : result;
     }
     /**
      * .grpc.binarylog.v1alpha.Peer.PeerType peer_type = 1;
      */
-    public Builder setPeerType(io.grpc.binarylog.Peer.PeerType value) {
+    public Builder setPeerType(io.grpc.binarylog.v1alpha.Peer.PeerType value) {
       if (value == null) {
         throw new NullPointerException();
       }
@@ -864,12 +864,12 @@ private static final long serialVersionUID = 0L;
   }
 
   // @@protoc_insertion_point(class_scope:grpc.binarylog.v1alpha.Peer)
-  private static final io.grpc.binarylog.Peer DEFAULT_INSTANCE;
+  private static final io.grpc.binarylog.v1alpha.Peer DEFAULT_INSTANCE;
   static {
-    DEFAULT_INSTANCE = new io.grpc.binarylog.Peer();
+    DEFAULT_INSTANCE = new io.grpc.binarylog.v1alpha.Peer();
   }
 
-  public static io.grpc.binarylog.Peer getDefaultInstance() {
+  public static io.grpc.binarylog.v1alpha.Peer getDefaultInstance() {
     return DEFAULT_INSTANCE;
   }
 
@@ -892,7 +892,7 @@ private static final long serialVersionUID = 0L;
     return PARSER;
   }
 
-  public io.grpc.binarylog.Peer getDefaultInstanceForType() {
+  public io.grpc.binarylog.v1alpha.Peer getDefaultInstanceForType() {
     return DEFAULT_INSTANCE;
   }
 
diff --git a/services/src/generated/main/java/io/grpc/binarylog/PeerOrBuilder.java b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/PeerOrBuilder.java
similarity index 86%
rename from services/src/generated/main/java/io/grpc/binarylog/PeerOrBuilder.java
rename to services/src/generated/main/java/io/grpc/binarylog/v1alpha/PeerOrBuilder.java
index 3c576dccab..15ec92cb3a 100644
--- a/services/src/generated/main/java/io/grpc/binarylog/PeerOrBuilder.java
+++ b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/PeerOrBuilder.java
@@ -1,7 +1,7 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
-// source: io/grpc/binarylog.proto
+// source: grpc/binlog/v1alpha/binarylog.proto
 
-package io.grpc.binarylog;
+package io.grpc.binarylog.v1alpha;
 
 public interface PeerOrBuilder extends
     // @@protoc_insertion_point(interface_extends:grpc.binarylog.v1alpha.Peer)
@@ -14,7 +14,7 @@ public interface PeerOrBuilder extends
   /**
    * .grpc.binarylog.v1alpha.Peer.PeerType peer_type = 1;
    */
-  io.grpc.binarylog.Peer.PeerType getPeerType();
+  io.grpc.binarylog.v1alpha.Peer.PeerType getPeerType();
 
   /**
    * 
diff --git a/services/src/generated/main/java/io/grpc/binarylog/Uint128.java b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/Uint128.java
similarity index 80%
rename from services/src/generated/main/java/io/grpc/binarylog/Uint128.java
rename to services/src/generated/main/java/io/grpc/binarylog/v1alpha/Uint128.java
index 1c0a940a96..db5949b015 100644
--- a/services/src/generated/main/java/io/grpc/binarylog/Uint128.java
+++ b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/Uint128.java
@@ -1,7 +1,7 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
-// source: io/grpc/binarylog.proto
+// source: grpc/binlog/v1alpha/binarylog.proto
 
-package io.grpc.binarylog;
+package io.grpc.binarylog.v1alpha;
 
 /**
  * 
@@ -79,14 +79,14 @@ private static final long serialVersionUID = 0L;
   }
   public static final com.google.protobuf.Descriptors.Descriptor
       getDescriptor() {
-    return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Uint128_descriptor;
+    return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Uint128_descriptor;
   }
 
   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
       internalGetFieldAccessorTable() {
-    return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Uint128_fieldAccessorTable
+    return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Uint128_fieldAccessorTable
         .ensureFieldAccessorsInitialized(
-            io.grpc.binarylog.Uint128.class, io.grpc.binarylog.Uint128.Builder.class);
+            io.grpc.binarylog.v1alpha.Uint128.class, io.grpc.binarylog.v1alpha.Uint128.Builder.class);
   }
 
   public static final int HIGH_FIELD_NUMBER = 1;
@@ -151,10 +151,10 @@ private static final long serialVersionUID = 0L;
     if (obj == this) {
      return true;
     }
-    if (!(obj instanceof io.grpc.binarylog.Uint128)) {
+    if (!(obj instanceof io.grpc.binarylog.v1alpha.Uint128)) {
       return super.equals(obj);
     }
-    io.grpc.binarylog.Uint128 other = (io.grpc.binarylog.Uint128) obj;
+    io.grpc.binarylog.v1alpha.Uint128 other = (io.grpc.binarylog.v1alpha.Uint128) obj;
 
     boolean result = true;
     result = result && (getHigh()
@@ -183,69 +183,69 @@ private static final long serialVersionUID = 0L;
     return hash;
   }
 
-  public static io.grpc.binarylog.Uint128 parseFrom(
+  public static io.grpc.binarylog.v1alpha.Uint128 parseFrom(
       java.nio.ByteBuffer data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.Uint128 parseFrom(
+  public static io.grpc.binarylog.v1alpha.Uint128 parseFrom(
       java.nio.ByteBuffer data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.Uint128 parseFrom(
+  public static io.grpc.binarylog.v1alpha.Uint128 parseFrom(
       com.google.protobuf.ByteString data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.Uint128 parseFrom(
+  public static io.grpc.binarylog.v1alpha.Uint128 parseFrom(
       com.google.protobuf.ByteString data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.Uint128 parseFrom(byte[] data)
+  public static io.grpc.binarylog.v1alpha.Uint128 parseFrom(byte[] data)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data);
   }
-  public static io.grpc.binarylog.Uint128 parseFrom(
+  public static io.grpc.binarylog.v1alpha.Uint128 parseFrom(
       byte[] data,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws com.google.protobuf.InvalidProtocolBufferException {
     return PARSER.parseFrom(data, extensionRegistry);
   }
-  public static io.grpc.binarylog.Uint128 parseFrom(java.io.InputStream input)
+  public static io.grpc.binarylog.v1alpha.Uint128 parseFrom(java.io.InputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.Uint128 parseFrom(
+  public static io.grpc.binarylog.v1alpha.Uint128 parseFrom(
       java.io.InputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input, extensionRegistry);
   }
-  public static io.grpc.binarylog.Uint128 parseDelimitedFrom(java.io.InputStream input)
+  public static io.grpc.binarylog.v1alpha.Uint128 parseDelimitedFrom(java.io.InputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseDelimitedWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.Uint128 parseDelimitedFrom(
+  public static io.grpc.binarylog.v1alpha.Uint128 parseDelimitedFrom(
       java.io.InputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
   }
-  public static io.grpc.binarylog.Uint128 parseFrom(
+  public static io.grpc.binarylog.v1alpha.Uint128 parseFrom(
       com.google.protobuf.CodedInputStream input)
       throws java.io.IOException {
     return com.google.protobuf.GeneratedMessageV3
         .parseWithIOException(PARSER, input);
   }
-  public static io.grpc.binarylog.Uint128 parseFrom(
+  public static io.grpc.binarylog.v1alpha.Uint128 parseFrom(
       com.google.protobuf.CodedInputStream input,
       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
       throws java.io.IOException {
@@ -257,7 +257,7 @@ private static final long serialVersionUID = 0L;
   public static Builder newBuilder() {
     return DEFAULT_INSTANCE.toBuilder();
   }
-  public static Builder newBuilder(io.grpc.binarylog.Uint128 prototype) {
+  public static Builder newBuilder(io.grpc.binarylog.v1alpha.Uint128 prototype) {
     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
   }
   public Builder toBuilder() {
@@ -281,20 +281,20 @@ private static final long serialVersionUID = 0L;
   public static final class Builder extends
       com.google.protobuf.GeneratedMessageV3.Builder implements
       // @@protoc_insertion_point(builder_implements:grpc.binarylog.v1alpha.Uint128)
-      io.grpc.binarylog.Uint128OrBuilder {
+      io.grpc.binarylog.v1alpha.Uint128OrBuilder {
     public static final com.google.protobuf.Descriptors.Descriptor
         getDescriptor() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Uint128_descriptor;
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Uint128_descriptor;
     }
 
     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
         internalGetFieldAccessorTable() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Uint128_fieldAccessorTable
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Uint128_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
-              io.grpc.binarylog.Uint128.class, io.grpc.binarylog.Uint128.Builder.class);
+              io.grpc.binarylog.v1alpha.Uint128.class, io.grpc.binarylog.v1alpha.Uint128.Builder.class);
     }
 
-    // Construct using io.grpc.binarylog.Uint128.newBuilder()
+    // Construct using io.grpc.binarylog.v1alpha.Uint128.newBuilder()
     private Builder() {
       maybeForceBuilderInitialization();
     }
@@ -320,23 +320,23 @@ private static final long serialVersionUID = 0L;
 
     public com.google.protobuf.Descriptors.Descriptor
         getDescriptorForType() {
-      return io.grpc.binarylog.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Uint128_descriptor;
+      return io.grpc.binarylog.v1alpha.BinaryLogProto.internal_static_grpc_binarylog_v1alpha_Uint128_descriptor;
     }
 
-    public io.grpc.binarylog.Uint128 getDefaultInstanceForType() {
-      return io.grpc.binarylog.Uint128.getDefaultInstance();
+    public io.grpc.binarylog.v1alpha.Uint128 getDefaultInstanceForType() {
+      return io.grpc.binarylog.v1alpha.Uint128.getDefaultInstance();
     }
 
-    public io.grpc.binarylog.Uint128 build() {
-      io.grpc.binarylog.Uint128 result = buildPartial();
+    public io.grpc.binarylog.v1alpha.Uint128 build() {
+      io.grpc.binarylog.v1alpha.Uint128 result = buildPartial();
       if (!result.isInitialized()) {
         throw newUninitializedMessageException(result);
       }
       return result;
     }
 
-    public io.grpc.binarylog.Uint128 buildPartial() {
-      io.grpc.binarylog.Uint128 result = new io.grpc.binarylog.Uint128(this);
+    public io.grpc.binarylog.v1alpha.Uint128 buildPartial() {
+      io.grpc.binarylog.v1alpha.Uint128 result = new io.grpc.binarylog.v1alpha.Uint128(this);
       result.high_ = high_;
       result.low_ = low_;
       onBuilt();
@@ -370,16 +370,16 @@ private static final long serialVersionUID = 0L;
       return (Builder) super.addRepeatedField(field, value);
     }
     public Builder mergeFrom(com.google.protobuf.Message other) {
-      if (other instanceof io.grpc.binarylog.Uint128) {
-        return mergeFrom((io.grpc.binarylog.Uint128)other);
+      if (other instanceof io.grpc.binarylog.v1alpha.Uint128) {
+        return mergeFrom((io.grpc.binarylog.v1alpha.Uint128)other);
       } else {
         super.mergeFrom(other);
         return this;
       }
     }
 
-    public Builder mergeFrom(io.grpc.binarylog.Uint128 other) {
-      if (other == io.grpc.binarylog.Uint128.getDefaultInstance()) return this;
+    public Builder mergeFrom(io.grpc.binarylog.v1alpha.Uint128 other) {
+      if (other == io.grpc.binarylog.v1alpha.Uint128.getDefaultInstance()) return this;
       if (other.getHigh() != 0L) {
         setHigh(other.getHigh());
       }
@@ -399,11 +399,11 @@ private static final long serialVersionUID = 0L;
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      io.grpc.binarylog.Uint128 parsedMessage = null;
+      io.grpc.binarylog.v1alpha.Uint128 parsedMessage = null;
       try {
         parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
-        parsedMessage = (io.grpc.binarylog.Uint128) e.getUnfinishedMessage();
+        parsedMessage = (io.grpc.binarylog.v1alpha.Uint128) e.getUnfinishedMessage();
         throw e.unwrapIOException();
       } finally {
         if (parsedMessage != null) {
@@ -479,12 +479,12 @@ private static final long serialVersionUID = 0L;
   }
 
   // @@protoc_insertion_point(class_scope:grpc.binarylog.v1alpha.Uint128)
-  private static final io.grpc.binarylog.Uint128 DEFAULT_INSTANCE;
+  private static final io.grpc.binarylog.v1alpha.Uint128 DEFAULT_INSTANCE;
   static {
-    DEFAULT_INSTANCE = new io.grpc.binarylog.Uint128();
+    DEFAULT_INSTANCE = new io.grpc.binarylog.v1alpha.Uint128();
   }
 
-  public static io.grpc.binarylog.Uint128 getDefaultInstance() {
+  public static io.grpc.binarylog.v1alpha.Uint128 getDefaultInstance() {
     return DEFAULT_INSTANCE;
   }
 
@@ -507,7 +507,7 @@ private static final long serialVersionUID = 0L;
     return PARSER;
   }
 
-  public io.grpc.binarylog.Uint128 getDefaultInstanceForType() {
+  public io.grpc.binarylog.v1alpha.Uint128 getDefaultInstanceForType() {
     return DEFAULT_INSTANCE;
   }
 
diff --git a/services/src/generated/main/java/io/grpc/binarylog/Uint128OrBuilder.java b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/Uint128OrBuilder.java
similarity index 81%
rename from services/src/generated/main/java/io/grpc/binarylog/Uint128OrBuilder.java
rename to services/src/generated/main/java/io/grpc/binarylog/v1alpha/Uint128OrBuilder.java
index 8502c885ef..fbd37d026c 100644
--- a/services/src/generated/main/java/io/grpc/binarylog/Uint128OrBuilder.java
+++ b/services/src/generated/main/java/io/grpc/binarylog/v1alpha/Uint128OrBuilder.java
@@ -1,7 +1,7 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
-// source: io/grpc/binarylog.proto
+// source: grpc/binlog/v1alpha/binarylog.proto
 
-package io.grpc.binarylog;
+package io.grpc.binarylog.v1alpha;
 
 public interface Uint128OrBuilder extends
     // @@protoc_insertion_point(interface_extends:grpc.binarylog.v1alpha.Uint128)
diff --git a/services/src/main/java/io/grpc/services/BinlogHelper.java b/services/src/main/java/io/grpc/services/BinlogHelper.java
index 27201f3fe3..2600167565 100644
--- a/services/src/main/java/io/grpc/services/BinlogHelper.java
+++ b/services/src/main/java/io/grpc/services/BinlogHelper.java
@@ -50,13 +50,13 @@ import io.grpc.ServerCall.Listener;
 import io.grpc.ServerCallHandler;
 import io.grpc.ServerInterceptor;
 import io.grpc.Status;
-import io.grpc.binarylog.GrpcLogEntry;
-import io.grpc.binarylog.GrpcLogEntry.Type;
-import io.grpc.binarylog.Message;
-import io.grpc.binarylog.Metadata.Builder;
-import io.grpc.binarylog.Peer;
-import io.grpc.binarylog.Peer.PeerType;
-import io.grpc.binarylog.Uint128;
+import io.grpc.binarylog.v1alpha.GrpcLogEntry;
+import io.grpc.binarylog.v1alpha.GrpcLogEntry.Type;
+import io.grpc.binarylog.v1alpha.Message;
+import io.grpc.binarylog.v1alpha.Metadata.Builder;
+import io.grpc.binarylog.v1alpha.Peer;
+import io.grpc.binarylog.v1alpha.Peer.PeerType;
+import io.grpc.binarylog.v1alpha.Uint128;
 import io.grpc.internal.GrpcUtil;
 import java.net.Inet4Address;
 import java.net.Inet6Address;
@@ -683,7 +683,7 @@ final class BinlogHelper {
     checkNotNull(entryBuilder, "entryBuilder");
     checkNotNull(metadata, "metadata");
     checkArgument(maxHeaderBytes >= 0, "maxHeaderBytes must be non negative");
-    Builder metaBuilder = io.grpc.binarylog.Metadata.newBuilder();
+    Builder metaBuilder = io.grpc.binarylog.v1alpha.Metadata.newBuilder();
     // This code is tightly coupled with Metadata's implementation
     byte[][] serialized = null;
     if (maxHeaderBytes > 0 && (serialized = InternalMetadata.serialize(metadata)) != null) {
diff --git a/services/src/main/proto/io/grpc/binarylog.proto b/services/src/main/proto/grpc/binlog/v1alpha/binarylog.proto
similarity index 98%
rename from services/src/main/proto/io/grpc/binarylog.proto
rename to services/src/main/proto/grpc/binlog/v1alpha/binarylog.proto
index b5ea37ddc2..73df5dbfe9 100644
--- a/services/src/main/proto/io/grpc/binarylog.proto
+++ b/services/src/main/proto/grpc/binlog/v1alpha/binarylog.proto
@@ -21,7 +21,7 @@ package grpc.binarylog.v1alpha;
 import "google/protobuf/duration.proto";
 
 option java_multiple_files = true;
-option java_package = "io.grpc.binarylog";
+option java_package = "io.grpc.binarylog.v1alpha";
 option java_outer_classname = "BinaryLogProto";
 
 // Log entry we store in binary logs
@@ -116,7 +116,7 @@ message Message {
 // SERVER_INIT_METADATA and TRAILING_METADATA
 // Implementations may omit some entries to honor the header limits
 // of GRPC_BINARY_LOG_CONFIG.
-//
+// 
 // Implementations will not log the following entries, and this is
 // not to be treated as a truncation:
 // - entries handled by grpc that are not user visible, such as those
diff --git a/services/src/test/java/io/grpc/services/BinlogHelperTest.java b/services/src/test/java/io/grpc/services/BinlogHelperTest.java
index b9d61ef065..148eb171c2 100644
--- a/services/src/test/java/io/grpc/services/BinlogHelperTest.java
+++ b/services/src/test/java/io/grpc/services/BinlogHelperTest.java
@@ -51,12 +51,12 @@ import io.grpc.MethodDescriptor.MethodType;
 import io.grpc.ServerCall;
 import io.grpc.ServerCallHandler;
 import io.grpc.Status;
-import io.grpc.binarylog.GrpcLogEntry;
-import io.grpc.binarylog.Message;
-import io.grpc.binarylog.MetadataEntry;
-import io.grpc.binarylog.Peer;
-import io.grpc.binarylog.Peer.PeerType;
-import io.grpc.binarylog.Uint128;
+import io.grpc.binarylog.v1alpha.GrpcLogEntry;
+import io.grpc.binarylog.v1alpha.Message;
+import io.grpc.binarylog.v1alpha.MetadataEntry;
+import io.grpc.binarylog.v1alpha.Peer;
+import io.grpc.binarylog.v1alpha.Peer.PeerType;
+import io.grpc.binarylog.v1alpha.Uint128;
 import io.grpc.internal.GrpcUtil;
 import io.grpc.internal.NoopClientCall;
 import io.grpc.internal.NoopServerCall;
@@ -397,7 +397,7 @@ public final class BinlogHelperTest {
   public void metadataToProto_empty() throws Exception {
     assertEquals(
         GrpcLogEntry.newBuilder()
-            .setMetadata(io.grpc.binarylog.Metadata.getDefaultInstance())
+            .setMetadata(io.grpc.binarylog.v1alpha.Metadata.getDefaultInstance())
             .build(),
         metadataToProtoTestHelper(new Metadata(), Integer.MAX_VALUE));
   }
@@ -407,7 +407,7 @@ public final class BinlogHelperTest {
     assertEquals(
         GrpcLogEntry.newBuilder()
             .setMetadata(
-                io.grpc.binarylog.Metadata
+                io.grpc.binarylog.v1alpha.Metadata
                     .newBuilder()
                     .addEntry(ENTRY_A)
                     .addEntry(ENTRY_B)
@@ -422,14 +422,14 @@ public final class BinlogHelperTest {
     // 0 byte limit not enough for any metadata
     assertEquals(
         GrpcLogEntry.newBuilder()
-            .setMetadata(io.grpc.binarylog.Metadata.getDefaultInstance())
+            .setMetadata(io.grpc.binarylog.v1alpha.Metadata.getDefaultInstance())
             .setTruncated(true)
             .build(),
         metadataToProtoTestHelper(nonEmptyMetadata, 0));
     // not enough bytes for first key value
     assertEquals(
         GrpcLogEntry.newBuilder()
-            .setMetadata(io.grpc.binarylog.Metadata.getDefaultInstance())
+            .setMetadata(io.grpc.binarylog.v1alpha.Metadata.getDefaultInstance())
             .setTruncated(true)
             .build(),
         metadataToProtoTestHelper(nonEmptyMetadata, 9));
@@ -437,7 +437,7 @@ public final class BinlogHelperTest {
     assertEquals(
         GrpcLogEntry.newBuilder()
             .setMetadata(
-                io.grpc.binarylog.Metadata
+                io.grpc.binarylog.v1alpha.Metadata
                     .newBuilder()
                     .addEntry(ENTRY_A)
                     .build())
@@ -448,7 +448,7 @@ public final class BinlogHelperTest {
     assertEquals(
         GrpcLogEntry.newBuilder()
             .setMetadata(
-                io.grpc.binarylog.Metadata
+                io.grpc.binarylog.v1alpha.Metadata
                     .newBuilder()
                     .addEntry(ENTRY_A)
                     .build())
@@ -458,7 +458,7 @@ public final class BinlogHelperTest {
     assertEquals(
         GrpcLogEntry.newBuilder()
             .setMetadata(
-                io.grpc.binarylog.Metadata
+                io.grpc.binarylog.v1alpha.Metadata
                     .newBuilder()
                     .addEntry(ENTRY_A)
                     .addEntry(ENTRY_B)
@@ -469,7 +469,7 @@ public final class BinlogHelperTest {
     assertEquals(
         GrpcLogEntry.newBuilder()
             .setMetadata(
-                io.grpc.binarylog.Metadata
+                io.grpc.binarylog.v1alpha.Metadata
                     .newBuilder()
                     .addEntry(ENTRY_A)
                     .addEntry(ENTRY_B)
@@ -481,7 +481,7 @@ public final class BinlogHelperTest {
     assertEquals(
         GrpcLogEntry.newBuilder()
             .setMetadata(
-                io.grpc.binarylog.Metadata
+                io.grpc.binarylog.v1alpha.Metadata
                     .newBuilder()
                     .addEntry(ENTRY_A)
                     .addEntry(ENTRY_B)
diff --git a/services/src/test/java/io/grpc/services/TempFileSinkTest.java b/services/src/test/java/io/grpc/services/TempFileSinkTest.java
index 05ae4887e4..69ca39f535 100644
--- a/services/src/test/java/io/grpc/services/TempFileSinkTest.java
+++ b/services/src/test/java/io/grpc/services/TempFileSinkTest.java
@@ -18,8 +18,8 @@ package io.grpc.services;
 
 import static org.junit.Assert.assertEquals;
 
-import io.grpc.binarylog.GrpcLogEntry;
-import io.grpc.binarylog.Uint128;
+import io.grpc.binarylog.v1alpha.GrpcLogEntry;
+import io.grpc.binarylog.v1alpha.Uint128;
 import java.io.DataInputStream;
 import java.io.FileInputStream;
 import java.io.IOException;