Protocol Documentation
Table of Contents
peer/peer.proto
ChangeNotification
ChangeNotification indicates a change regarding a hubble peer.
Field |
Type |
Label |
Description |
---|---|---|---|
name |
Name is the name of the peer, typically the hostname. The name includes the cluster name if a value other than default has been specified. This value can be used to uniquely identify the host. When the cluster name is not the default, the cluster name is prepended to the peer name and a forward slash is added. |
Examples: - runtime1 - testcluster/runtime1 | | address | string | | Address is the address of the peer’s gRPC service. | | type | ChangeNotificationType | | ChangeNotificationType indicates the type of change, ie whether the peer was added, deleted or updated. | | tls | TLS | | TLS provides information to connect to the Address with TLS enabled. If not set, TLS shall be assumed to be disabled. |
NotifyRequest
TLS
TLS provides information to establish a TLS connection to the peer.
Field |
Type |
Label |
Description |
---|---|---|---|
server_name |
ServerName is used to verify the hostname on the returned certificate. |
ChangeNotificationType
ChangeNotificationType defines the peer change notification type.
Name |
Number |
Description |
---|---|---|
UNKNOWN |
0 |
|
PEER_ADDED |
1 |
|
PEER_DELETED |
2 |
|
PEER_UPDATED |
3 |
Peer
Peer lists hubble peers and notifies of changes.
Method Name |
Request Type |
Response Type |
Description |
---|---|---|---|
Notify |
ChangeNotification stream |
Notify sends information about hubble peers in the cluster. When Notify is called, it sends information about all the peers that are already part of the cluster (with the type as PEER_ADDED). It subsequently notifies of any change. |
Scalar Value Types
.proto Type |
Notes |
C++ |
Java |
Python |
Go |
C# |
PHP |
Ruby |
---|---|---|---|---|---|---|---|---|
double |
double |
float |
float64 |
double |
float |
Float |
||
float |
float |
float |
float32 |
float |
float |
Float |
||
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
|
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
|
Uses variable-length encoding. |
uint32 |
int |
int/long |
uint32 |
uint |
integer |
Bignum or Fixnum (as required) |
|
Uses variable-length encoding. |
uint64 |
long |
int/long |
uint64 |
ulong |
integer/string |
Bignum or Fixnum (as required) |
|
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
|
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
|
Always four bytes. More efficient than uint32 if values are often greater than 2^28. |
uint32 |
int |
int |
uint32 |
uint |
integer |
Bignum or Fixnum (as required) |
|
Always eight bytes. More efficient than uint64 if values are often greater than 2^56. |
uint64 |
long |
int/long |
uint64 |
ulong |
integer/string |
Bignum |
|
Always four bytes. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
|
Always eight bytes. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
|
bool |
boolean |
boolean |
bool |
bool |
boolean |
TrueClass/FalseClass |
||
A string must always contain UTF-8 encoded or 7-bit ASCII text. |
string |
String |
str/unicode |
string |
string |
string |
String (UTF-8) |
|
May contain any arbitrary sequence of bytes. |
string |
ByteString |
str |
[]byte |
ByteString |
string |
String (ASCII-8BIT) |