Field Name | Type | Description |
---|---|---|
key | ConfigDiffKey | Key represents config diff key |
uri | google.protobuf.StringValue | Uri represents the HTTP URI client can use to GET config diff and associated errors |
error | ConfigError |
ConfigDiffKey uniquely identifies a configuration diff request
Field Name | Type | Description |
---|---|---|
a_device_id | google.protobuf.StringValue | A_device_id is the serial number of the device on A side (left hand side) |
a_type | ConfigType | A_type is the config type on A side (left hand side) |
a_time | google.protobuf.Timestamp | A_time is the time at which to fetch config on A side (left hand side) |
b_device_id | google.protobuf.StringValue | B_device_id is the serial number of the device on B side (right hand side) |
b_type | ConfigType | B_type is the config type on B side (right hand side) |
b_time | google.protobuf.Timestamp | B_time is the time at which to fetch config on B side (right hand side) |
ConfigError represents errors reported by CVP when handling device configuration
Field Name | Type | Description |
---|---|---|
error_code | ErrorCode | |
error_msg | google.protobuf.StringValue | |
line_num | google.protobuf.Int32Value | Line_num represents line number, if any |
configlet_name | google.protobuf.StringValue | Configlet_name represents the originating configlet name. Configlet_name and line_num point to the line where config warning or config error originate. |
Field Name | Type | Description |
---|---|---|
values | ConfigError[…] |
ConfigKey uniquely identifies a config request.
Field Name | Type | Description |
---|---|---|
device_id | google.protobuf.StringValue | Device_id is the serial number of the device |
type | ConfigType | Type describes the config type |
ConfigSummary represents device configuration summary.
Field Name | Type | Description |
---|---|---|
sync | ConfigSyncCode | |
nop_lines | google.protobuf.Int32Value | Number of lines with code no-operation |
ignored_lines | google.protobuf.Int32Value | Number of lines with code IGNORE |
added_lines | google.protobuf.Int32Value | Number of lines with code ADD |
deleted_lines | google.protobuf.Int32Value | Number of lines with code DELETE |
changed_lines | google.protobuf.Int32Value | Number of lines with code CHANGE |
designed_config_errors | google.protobuf.Int32Value | Number of designed config errors |
designed_config_warnings | google.protobuf.Int32Value | Number of designed config warnings |
running_config_update_time | google.protobuf.Timestamp | Timestamp at which running config is updated |
designed_config_update_time | google.protobuf.Timestamp | Timestamp at which designed config is updated |
running_config_uri | google.protobuf.StringValue | The HTTP URI client can use to GET running config and associated errors |
designed_config_uri | google.protobuf.StringValue | The HTTP URI client can use to GET designed config and associated errors |
diff_uri | google.protobuf.StringValue | The HTTP URI client can use to GET config diff and associated errors |
digest | google.protobuf.StringValue | Digest of the config diff. For example, it can be SHA-256 hash of the config diff |
Configuration represents device’s CLI configuration
Field Name | Type | Description |
---|---|---|
key | ConfigKey | |
uri | google.protobuf.StringValue | Uri represents the HTTP URI client can use to GET config body and associated errors |
error | ConfigError |
DiffEntries indicates potential multiple lines of config diff
Field Name | Type | Description |
---|---|---|
values | DiffEntry[…] |
DiffEntry represents one entry in a Diff
Field Name | Type | Description |
---|---|---|
op | DiffOp | |
a_line_num | google.protobuf.Int32Value | line number in A this diff applies to |
b_line_num | google.protobuf.Int32Value | line number in B this diff applies to |
b_parent_line_num | google.protobuf.Int32Value | line number in B of the leading command of the containing block |
a_line | google.protobuf.StringValue | content of config line in A |
b_line | google.protobuf.StringValue | content of config line in B |
a_filter_code | ConfigFilterCode | Config filter code of the line in A |
b_filter_code | ConfigFilterCode | Config filter code of the line in B |
Field Name | Type | Description |
---|---|---|
key | SummaryKey | |
summary | ConfigSummary | |
error | ConfigError |
SummaryKey uniquely identifies a device summary request
Field Name | Type | Description |
---|---|---|
device_id | google.protobuf.StringValue | Device_id is the serial number of the device |
ConfigFilterCode indicates if a config line matches PCM filter(s)
Name | Number | Description |
---|---|---|
CONFIG_FILTER_CODE_UNSPECIFIED | 0 | UNSPECIFIED indicates config line did not match any partial config management (PCM) filter |
CONFIG_FILTER_CODE_MANAGED_LINE | 1 | MANAGED_LINE indicates config line matches managed PCM filter hence is managed |
CONFIG_FILTER_CODE_UNMANAGED_LINE | 2 | UNMANAGED_LINE indicates config line matches unmanaged PCM filter hence is not managed |
ConfigSyncCode indicates config synchronization status
Name | Number | Description |
---|---|---|
CONFIG_SYNC_CODE_UNSPECIFIED | 0 | |
CONFIG_SYNC_CODE_IN_SYNC | 1 | IN_SYNC indicates designed config and running config are identical |
CONFIG_SYNC_CODE_OUT_OF_SYNC | 2 | OUT_OF_SYNC indicates designed config and running config are not identical |
Name | Number | Description |
---|---|---|
CONFIG_TYPE_UNSPECIFIED | 0 | |
CONFIG_TYPE_RUNNING_CONFIG | 1 | |
CONFIG_TYPE_DESIGNED_CONFIG | 2 |
DiffOp is the operation to a line from one side of diff to get to another
Name | Number | Description |
---|---|---|
DIFF_OP_UNSPECIFIED | 0 | |
DIFF_OP_NOP | 1 | NOP indicates no change. A and B are identical at this line |
DIFF_OP_IGNORE | 2 | IGNORE indicates a line that’s ignored in either A or B. One of a_line_num or b_line_num will be -1 |
DIFF_OP_ADD | 3 | ADD is an addition of a line from A |
DIFF_OP_DELETE | 4 | DELETE is deletion of a line from B |
DIFF_OP_CHANGE | 5 | CHANGE is a modification to a line in A |
ErrorCode indicates warnings and errors produced during computing config
Name | Number | Description |
---|---|---|
ERROR_CODE_UNSPECIFIED | 0 | |
ERROR_CODE_DEVICE_WARNING | 1 | DEVICE_WARNING indicates device warning |
ERROR_CODE_DEVICE_ERROR | 2 | DEVICE_ERROR indicates device error |
ERROR_CODE_UNREACHABLE_DEVICE | 3 | UNREACHABLE_DEVICE indicates the device cannot be reached |
ERROR_CODE_CONFIG_FILTER_ERROR | 4 | CONFIG_FILTER_ERROR indicates error from partial config management filters |
ERROR_CODE_INTERNAL | 5 | INTERNAL indicates internal errors |
Field Name | Type | Description |
---|---|---|
key | ConfigDiffKey | Key uniquely identifies a ConfigDiff instance to retrieve. This value must be populated. |
time | google.protobuf.Timestamp | Time indicates the time for which you are interested in the data. If no time is given, the server will use the time at which it makes the request. |
Field Name | Type | Description |
---|---|---|
value | ConfigDiff | Value is the value requested. This structure will be fully-populated as it exists in the datastore. If optional fields were not given at creation, these fields will be empty or set to default values. |
time | google.protobuf.Timestamp | Time carries the (UTC) timestamp of the last-modification of the ConfigDiff instance in this response. |
Field Name | Type | Description |
---|---|---|
partial_eq_filter | ConfigDiff[…] | PartialEqFilter provides a way to server-side filter a GetAll/Subscribe. This requires all provided fields to be equal to the response. While transparent to users, this field also allows services to optimize internal subscriptions if filter(s) are sufficiently specific. |
time | arista.time.TimeBounds | TimeRange allows limiting response data to within a specified time window. If this field is populated, at least one of the two time fields are required. This field is not allowed in the Subscribe RPC. |
Field Name | Type | Description |
---|---|---|
value | ConfigDiff | Value is a value deemed relevant to the initiating request. This structure will always have its key-field populated. Which other fields are populated, and why, depends on the value of Operation and what triggered this notification. |
time | google.protobuf.Timestamp | Time holds the timestamp of this ConfigDiff’s last modification. |
type | arista.subscriptions.Operation | Operation indicates how the ConfigDiff value in this response should be considered. Under non-subscribe requests, this value should always be INITIAL. In a subscription, once all initial data is streamed and the client begins to receive modification updates, you should not see INITIAL again. |
Field Name | Type | Description |
---|---|---|
key | ConfigKey | Key uniquely identifies a Configuration instance to retrieve. This value must be populated. |
time | google.protobuf.Timestamp | Time indicates the time for which you are interested in the data. If no time is given, the server will use the time at which it makes the request. |
Field Name | Type | Description |
---|---|---|
value | Configuration | Value is the value requested. This structure will be fully-populated as it exists in the datastore. If optional fields were not given at creation, these fields will be empty or set to default values. |
time | google.protobuf.Timestamp | Time carries the (UTC) timestamp of the last-modification of the Configuration instance in this response. |
Field Name | Type | Description |
---|---|---|
partial_eq_filter | Configuration[…] | PartialEqFilter provides a way to server-side filter a GetAll/Subscribe. This requires all provided fields to be equal to the response. While transparent to users, this field also allows services to optimize internal subscriptions if filter(s) are sufficiently specific. |
time | arista.time.TimeBounds | TimeRange allows limiting response data to within a specified time window. If this field is populated, at least one of the two time fields are required. This field is not allowed in the Subscribe RPC. |
Field Name | Type | Description |
---|---|---|
value | Configuration | Value is a value deemed relevant to the initiating request. This structure will always have its key-field populated. Which other fields are populated, and why, depends on the value of Operation and what triggered this notification. |
time | google.protobuf.Timestamp | Time holds the timestamp of this Configuration’s last modification. |
type | arista.subscriptions.Operation | Operation indicates how the Configuration value in this response should be considered. Under non-subscribe requests, this value should always be INITIAL. In a subscription, once all initial data is streamed and the client begins to receive modification updates, you should not see INITIAL again. |
Field Name | Type | Description |
---|---|---|
key | SummaryKey | Key uniquely identifies a Summary instance to retrieve. This value must be populated. |
time | google.protobuf.Timestamp | Time indicates the time for which you are interested in the data. If no time is given, the server will use the time at which it makes the request. |
Field Name | Type | Description |
---|---|---|
value | Summary | Value is the value requested. This structure will be fully-populated as it exists in the datastore. If optional fields were not given at creation, these fields will be empty or set to default values. |
time | google.protobuf.Timestamp | Time carries the (UTC) timestamp of the last-modification of the Summary instance in this response. |
Field Name | Type | Description |
---|---|---|
partial_eq_filter | Summary[…] | PartialEqFilter provides a way to server-side filter a GetAll/Subscribe. This requires all provided fields to be equal to the response. While transparent to users, this field also allows services to optimize internal subscriptions if filter(s) are sufficiently specific. |
time | arista.time.TimeBounds | TimeRange allows limiting response data to within a specified time window. If this field is populated, at least one of the two time fields are required. This field is not allowed in the Subscribe RPC. |
Field Name | Type | Description |
---|---|---|
value | Summary | Value is a value deemed relevant to the initiating request. This structure will always have its key-field populated. Which other fields are populated, and why, depends on the value of Operation and what triggered this notification. |
time | google.protobuf.Timestamp | Time holds the timestamp of this Summary’s last modification. |
type | arista.subscriptions.Operation | Operation indicates how the Summary value in this response should be considered. Under non-subscribe requests, this value should always be INITIAL. In a subscription, once all initial data is streamed and the client begins to receive modification updates, you should not see INITIAL again. |
Method Name | Request Type | Response Type | Description |
---|---|---|---|
GetOne | ConfigDiffRequest | ConfigDiffResponse | |
GetAll | ConfigDiffStreamRequest | ConfigDiffStreamResponse stream | |
Subscribe | ConfigDiffStreamRequest | ConfigDiffStreamResponse stream |
Method Name | Request Type | Response Type | Description |
---|---|---|---|
GetOne | ConfigurationRequest | ConfigurationResponse | |
GetAll | ConfigurationStreamRequest | ConfigurationStreamResponse stream | |
Subscribe | ConfigurationStreamRequest | ConfigurationStreamResponse stream |
Method Name | Request Type | Response Type | Description |
---|---|---|---|
GetOne | SummaryRequest | SummaryResponse | |
GetAll | SummaryStreamRequest | SummaryStreamResponse stream | |
Subscribe | SummaryStreamRequest | SummaryStreamResponse stream |