cloudvision.api.arista.logging.v1 package

Module contents

class cloudvision.api.arista.logging.v1.Logging(key: LoggingKey = <PLACEHOLDER>, log: str | None = <PLACEHOLDER>, file: str | None = <PLACEHOLDER>, line: int | None = <PLACEHOLDER>, audit: LoggingAudit = <PLACEHOLDER>, tags: MapStringString = <PLACEHOLDER>)[source]

Bases: Message

Logging is used to retrieve non-audit related logs produced by such services as change controls, studio builds, python autofill actions, etc.

audit: LoggingAudit = <PLACEHOLDER>

audit contains additional audit information added by the service when the log was written.

file: str | None = <PLACEHOLDER>

file contains the file name of the script being executed, if relevant.

key: LoggingKey = <PLACEHOLDER>

key uniquely identifies a standalone log or a series of logs for a single execution.

line: int | None = <PLACEHOLDER>

line contains the line number of the log in the script being executed, if relevant.

log: str | None = <PLACEHOLDER>

log contains the actual log contents.

tags: MapStringString = <PLACEHOLDER>

tags is a map of tag values that was set on write and can be used in queries to filter the logs. Some executions will automatically populate some tags. E.g. change control logs will populate a “changeControlId” and “stageId” tag.

class cloudvision.api.arista.logging.v1.LoggingAudit(added_by: str | None = <PLACEHOLDER>)[source]

Bases: Message

LoggingAudit contains audit information about the given log. It’s added by the logging rAPI and only accessible in the state model.

added_by: str | None = <PLACEHOLDER>

added_by contains the name of the user who added the log.

class cloudvision.api.arista.logging.v1.LoggingCategory(value: int)[source]

Bases: Enum

LoggingCategory describes the possible categories of logging.

ACTION_EXEC = LoggingCategory.ACTION_EXEC

LOGGING_CATEGORY_ACTION_EXEC is used for actions executed via autofill actions, build hooks, or the standalone execution feature.

CHANGECONTROL = LoggingCategory.CHANGECONTROL

LOGGING_CATEGORY_CHANGECONTROL is used for actions executed as part of a change control.

STUDIO_TEMPLATE = LoggingCategory.STUDIO_TEMPLATE

LOGGING_CATEGORY_STUDIO_TEMPLATE is used for studio template rendering executions.

UNSPECIFIED = LoggingCategory.UNSPECIFIED

LOGGING_CATEGORY_UNSPECIFIED is an unspecified category. Disallowed for writes.

name: str | None
value: int
class cloudvision.api.arista.logging.v1.LoggingConfig(key: LoggingKey = <PLACEHOLDER>, log: str | None = <PLACEHOLDER>, file: str | None = <PLACEHOLDER>, line: int | None = <PLACEHOLDER>, tags: MapStringString = <PLACEHOLDER>)[source]

Bases: Message

LoggingConfig is used to write non-audit related logs produced by such services as change controls, studio builds, python autofill actions, etc. by providing a key related to the current execution, the log, and optional metadata such as file name, line number and tags.

file: str | None = <PLACEHOLDER>

file contains the file name of the script being executed, if relevant.

key: LoggingKey = <PLACEHOLDER>

key uniquely identifies a standalone log or a series of logs for a single execution.

line: int | None = <PLACEHOLDER>

line contains the line number of the log in the script being executed, if relevant.

log: str | None = <PLACEHOLDER>

log contains the actual log contents.

tags: MapStringString = <PLACEHOLDER>

tags is a map of tag values that can be set on write and can be used in queries to filter the logs. Some executions will automatically populate some tags. E.g. change control logs will populate a “changeControlId” and “stageId” tag.

class cloudvision.api.arista.logging.v1.LoggingConfigDeleteAllRequest(partial_eq_filter: List[ForwardRef('LoggingConfig')] = <PLACEHOLDER>)[source]

Bases: Message

partial_eq_filter: List[LoggingConfig] = <PLACEHOLDER>

PartialEqFilter provides a way to server-side filter a DeleteAll. This requires all provided fields to be equal to the response. A filtered DeleteAll will use GetAll with filter to find things to delete.

class cloudvision.api.arista.logging.v1.LoggingConfigDeleteAllResponse(type: '___fmp__.DeleteError' = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, key: 'LoggingKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

error: str | None = <PLACEHOLDER>

This indicates the error message from the delete failure.

key: LoggingKey = <PLACEHOLDER>

This is the key of the LoggingConfig instance that failed to be deleted.

time: datetime = <PLACEHOLDER>

Time indicates the (UTC) timestamp when the key was being deleted.

type: DeleteError = <PLACEHOLDER>

This describes the class of delete error. A DeleteAllResponse is only sent when there is an error.

class cloudvision.api.arista.logging.v1.LoggingConfigDeleteRequest(key: 'LoggingKey' = <PLACEHOLDER>)[source]

Bases: Message

key: LoggingKey = <PLACEHOLDER>

Key indicates which LoggingConfig instance to remove. This field must always be set.

class cloudvision.api.arista.logging.v1.LoggingConfigDeleteResponse(key: 'LoggingKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

key: LoggingKey = <PLACEHOLDER>

Key echoes back the key of the deleted LoggingConfig instance.

time: datetime = <PLACEHOLDER>

Time indicates the (UTC) timestamp at which the system recognizes the deletion. The only guarantees made about this timestamp are:

  • it is after the time the request was received

  • a time-ranged query with StartTime==DeletedAt will not include this instance.

class cloudvision.api.arista.logging.v1.LoggingConfigDeleteSomeRequest(keys: List[ForwardRef('LoggingKey')] = <PLACEHOLDER>)[source]

Bases: Message

keys: List[LoggingKey] = <PLACEHOLDER>

key contains a list of LoggingConfig keys to delete

class cloudvision.api.arista.logging.v1.LoggingConfigDeleteSomeResponse(key: LoggingKey = <PLACEHOLDER>, error: str = <PLACEHOLDER>)[source]

Bases: Message

LoggingConfigDeleteSomeResponse is only sent when there is an error.

error: str = <PLACEHOLDER>
key: LoggingKey = <PLACEHOLDER>
class cloudvision.api.arista.logging.v1.LoggingConfigRequest(key: 'LoggingKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

key: LoggingKey = <PLACEHOLDER>

Key uniquely identifies a LoggingConfig instance to retrieve. This value must be populated.

time: datetime = <PLACEHOLDER>

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.

class cloudvision.api.arista.logging.v1.LoggingConfigResponse(value: 'LoggingConfig' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the LoggingConfig instance in this response.

value: LoggingConfig = <PLACEHOLDER>

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.

class cloudvision.api.arista.logging.v1.LoggingConfigServiceBase[source]

Bases: ServiceBase

async delete(logging_config_delete_request: LoggingConfigDeleteRequest) LoggingConfigDeleteResponse[source]
async delete_all(logging_config_delete_all_request: LoggingConfigDeleteAllRequest) AsyncIterator[LoggingConfigDeleteAllResponse][source]
async delete_some(logging_config_delete_some_request: LoggingConfigDeleteSomeRequest) AsyncIterator[LoggingConfigDeleteSomeResponse][source]
async get_all(logging_config_stream_request: LoggingConfigStreamRequest) AsyncIterator[LoggingConfigStreamResponse][source]
async get_meta(logging_config_stream_request: LoggingConfigStreamRequest) MetaResponse[source]
async get_one(logging_config_request: LoggingConfigRequest) LoggingConfigResponse[source]
async get_some(logging_config_some_request: LoggingConfigSomeRequest) AsyncIterator[LoggingConfigSomeResponse][source]
async set(logging_config_set_request: LoggingConfigSetRequest) LoggingConfigSetResponse[source]
async set_some(logging_config_set_some_request: LoggingConfigSetSomeRequest) AsyncIterator[LoggingConfigSetSomeResponse][source]
async subscribe(logging_config_stream_request: LoggingConfigStreamRequest) AsyncIterator[LoggingConfigStreamResponse][source]
async subscribe_meta(logging_config_stream_request: LoggingConfigStreamRequest) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.logging.v1.LoggingConfigServiceStub(channel: Channel, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: Mapping[str, str | bytes] | Collection[Tuple[str, str | bytes]] | None = None)[source]

Bases: ServiceStub

async delete(logging_config_delete_request: LoggingConfigDeleteRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) LoggingConfigDeleteResponse[source]
async delete_all(logging_config_delete_all_request: LoggingConfigDeleteAllRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[LoggingConfigDeleteAllResponse][source]
async delete_some(logging_config_delete_some_request: LoggingConfigDeleteSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[LoggingConfigDeleteSomeResponse][source]
async get_all(logging_config_stream_request: LoggingConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[LoggingConfigStreamResponse][source]
async get_meta(logging_config_stream_request: LoggingConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) MetaResponse[source]
async get_one(logging_config_request: LoggingConfigRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) LoggingConfigResponse[source]
async get_some(logging_config_some_request: LoggingConfigSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[LoggingConfigSomeResponse][source]
async set(logging_config_set_request: LoggingConfigSetRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) LoggingConfigSetResponse[source]
async set_some(logging_config_set_some_request: LoggingConfigSetSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[LoggingConfigSetSomeResponse][source]
async subscribe(logging_config_stream_request: LoggingConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[LoggingConfigStreamResponse][source]
async subscribe_meta(logging_config_stream_request: LoggingConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.logging.v1.LoggingConfigSetRequest(value: 'LoggingConfig' = <PLACEHOLDER>)[source]

Bases: Message

value: LoggingConfig = <PLACEHOLDER>

LoggingConfig carries the value to set into the datastore. See the documentation on the LoggingConfig struct for which fields are required.

class cloudvision.api.arista.logging.v1.LoggingConfigSetResponse(value: 'LoggingConfig' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time indicates the (UTC) timestamp at which the system recognizes the creation. The only guarantees made about this timestamp are:

  • it is after the time the request was received

  • a time-ranged query with StartTime==CreatedAt will include this instance.

value: LoggingConfig = <PLACEHOLDER>

Value carries all the values given in the LoggingConfigSetRequest as well as any server-generated values.

class cloudvision.api.arista.logging.v1.LoggingConfigSetSomeRequest(values: List[ForwardRef('LoggingConfig')] = <PLACEHOLDER>)[source]

Bases: Message

values: List[LoggingConfig] = <PLACEHOLDER>

value contains a list of LoggingConfig values to write. It is possible to provide more values than can fit within either:

  • the maxiumum send size of the client

  • the maximum receive size of the server

If this error occurs you must reduce the number of values sent. See gRPC “maximum message size” documentation for more information.

class cloudvision.api.arista.logging.v1.LoggingConfigSetSomeResponse(key: 'LoggingKey' = <PLACEHOLDER>, error: str = <PLACEHOLDER>)[source]

Bases: Message

error: str = <PLACEHOLDER>
key: LoggingKey = <PLACEHOLDER>
class cloudvision.api.arista.logging.v1.LoggingConfigSomeRequest(keys: List[ForwardRef('LoggingKey')] = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

keys: List[LoggingKey] = <PLACEHOLDER>
time: datetime = <PLACEHOLDER>

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.

class cloudvision.api.arista.logging.v1.LoggingConfigSomeResponse(value: 'LoggingConfig' = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

error: str | None = <PLACEHOLDER>

Error is an optional field. It should be filled when there is an error in the GetSome process.

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the LoggingConfig instance in this response.

value: LoggingConfig = <PLACEHOLDER>

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.

class cloudvision.api.arista.logging.v1.LoggingConfigStreamRequest(partial_eq_filter: List[ForwardRef('LoggingConfig')] = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>)[source]

Bases: Message

partial_eq_filter: List[LoggingConfig] = <PLACEHOLDER>

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: TimeBounds = <PLACEHOLDER>

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.

For GetAll, the fields start and end can be used as follows:

  • end: Returns the state of each LoggingConfig at end. * Each LoggingConfig response is fully-specified (all fields set).

  • start: Returns the state of each LoggingConfig at start, followed by updates until now. * Each LoggingConfig response at start is fully-specified, but updates may be partial.

  • start and end: Returns the state of each LoggingConfig at start, followed by updates until end. * Each LoggingConfig response at start is fully-specified, but updates until end may

    be partial.

class cloudvision.api.arista.logging.v1.LoggingConfigStreamResponse(value: 'LoggingConfig' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>, type: '__subscriptions__.Operation' = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time holds the timestamp of this LoggingConfig’s last modification.

type: Operation = <PLACEHOLDER>

Operation indicates how the LoggingConfig 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.

value: LoggingConfig = <PLACEHOLDER>

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.

class cloudvision.api.arista.logging.v1.LoggingKey(id: str | None = <PLACEHOLDER>, category: LoggingCategory = <PLACEHOLDER>, level: LoggingLevel = <PLACEHOLDER>)[source]

Bases: Message

LoggingKey uniquely identifies a log via its id, its category and level. All log lines for executions of change controls, studios, etc. are written under the same key.

category: LoggingCategory = <PLACEHOLDER>

category is the category of the log.

id: str | None = <PLACEHOLDER>

id is a unique identifier provided by the client.

level: LoggingLevel = <PLACEHOLDER>

level is the verbosity level of the log.

class cloudvision.api.arista.logging.v1.LoggingLevel(value: int)[source]

Bases: Enum

LoggingLevel describes the different verbosity levels of logging.

CRITICAL = LoggingLevel.CRITICAL

LOGGING_LEVEL_CRITICAL is equivalent to a critical verbosity log call.

DEBUG = LoggingLevel.DEBUG

LOGGING_LEVEL_DEBUG is equivalent to a debug verbosity log call.

ERROR = LoggingLevel.ERROR

LOGGING_LEVEL_ERROR is equivalent to an error verbosity log call.

INFO = LoggingLevel.INFO

LOGGING_LEVEL_INFO is equivalent to an info verbosity log call.

TRACE = LoggingLevel.TRACE

LOGGING_LEVEL_TRACE is equivalent to a trace verbosity log call.

UNSPECIFIED = LoggingLevel.UNSPECIFIED

LOGGING_LEVEL_UNSPECIFIED is an unspecified level. Disallowed for writes, but setting this in a GetAll filter returns all logging levels.

WARNING = LoggingLevel.WARNING

LOGGING_LEVEL_WARNING is equivalent to a warning verbosity log call.

name: str | None
value: int
class cloudvision.api.arista.logging.v1.LoggingRequest(key: 'LoggingKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

key: LoggingKey = <PLACEHOLDER>

Key uniquely identifies a Logging instance to retrieve. This value must be populated.

time: datetime = <PLACEHOLDER>

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.

class cloudvision.api.arista.logging.v1.LoggingResponse(value: 'Logging' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the Logging instance in this response.

value: Logging = <PLACEHOLDER>

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.

class cloudvision.api.arista.logging.v1.LoggingServiceBase[source]

Bases: ServiceBase

async get_all(logging_stream_request: LoggingStreamRequest) AsyncIterator[LoggingStreamResponse][source]
async get_meta(logging_stream_request: LoggingStreamRequest) MetaResponse[source]
async get_one(logging_request: LoggingRequest) LoggingResponse[source]
async get_some(logging_some_request: LoggingSomeRequest) AsyncIterator[LoggingSomeResponse][source]
async subscribe(logging_stream_request: LoggingStreamRequest) AsyncIterator[LoggingStreamResponse][source]
async subscribe_meta(logging_stream_request: LoggingStreamRequest) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.logging.v1.LoggingServiceStub(channel: Channel, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: Mapping[str, str | bytes] | Collection[Tuple[str, str | bytes]] | None = None)[source]

Bases: ServiceStub

async get_all(logging_stream_request: LoggingStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[LoggingStreamResponse][source]
async get_meta(logging_stream_request: LoggingStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) MetaResponse[source]
async get_one(logging_request: LoggingRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) LoggingResponse[source]
async get_some(logging_some_request: LoggingSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[LoggingSomeResponse][source]
async subscribe(logging_stream_request: LoggingStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[LoggingStreamResponse][source]
async subscribe_meta(logging_stream_request: LoggingStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.logging.v1.LoggingSomeRequest(keys: List[ForwardRef('LoggingKey')] = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

keys: List[LoggingKey] = <PLACEHOLDER>
time: datetime = <PLACEHOLDER>

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.

class cloudvision.api.arista.logging.v1.LoggingSomeResponse(value: 'Logging' = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

error: str | None = <PLACEHOLDER>

Error is an optional field. It should be filled when there is an error in the GetSome process.

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the Logging instance in this response.

value: Logging = <PLACEHOLDER>

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.

class cloudvision.api.arista.logging.v1.LoggingStreamRequest(partial_eq_filter: List[ForwardRef('Logging')] = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>)[source]

Bases: Message

partial_eq_filter: List[Logging] = <PLACEHOLDER>

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: TimeBounds = <PLACEHOLDER>

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.

For GetAll, the fields start and end can be used as follows:

  • end: Returns the state of each Logging at end. * Each Logging response is fully-specified (all fields set).

  • start: Returns the state of each Logging at start, followed by updates until now. * Each Logging response at start is fully-specified, but updates may be partial.

  • start and end: Returns the state of each Logging at start, followed by updates until end. * Each Logging response at start is fully-specified, but updates until end may

    be partial.

class cloudvision.api.arista.logging.v1.LoggingStreamResponse(value: 'Logging' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>, type: '__subscriptions__.Operation' = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time holds the timestamp of this Logging’s last modification.

type: Operation = <PLACEHOLDER>

Operation indicates how the Logging 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.

value: Logging = <PLACEHOLDER>

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.

class cloudvision.api.arista.logging.v1.MetaResponse(time: datetime.datetime = <PLACEHOLDER>, type: '__subscriptions__.Operation' = <PLACEHOLDER>, count: int | None = <PLACEHOLDER>)[source]

Bases: Message

count: int | None = <PLACEHOLDER>

Count is the number of items present under the conditions of the request.

time: datetime = <PLACEHOLDER>

Time holds the timestamp of the last item included in the metadata calculation.

type: Operation = <PLACEHOLDER>

Operation indicates how the 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.