Skip to main content
Version: Trunk

auditlog.v1

Version: 1.0.3

Available Services

    AuditlogService

Top

arista/auditlog.v1/auditlog.proto

Attributes

Attributes are fields that make up the audit log.

Field NameTypeDescription
usergoogle.protobuf.StringValue

user is the CloudVision user to which the log corresponds to.

timestampgoogle.protobuf.Timestamp

timestamp at which the log was generated.

eg: 2006-01-02T15:04:05.000Z

severitySeverity

severity is level of importance or urgency of the audit log message.

eg: Debug, Info, Error

device_namegoogle.protobuf.StringValue

device_name of the device for which audit log is sent.

servicegoogle.protobuf.StringValue

service name for which audit log is added.

eg: aaa, accesscontrol, inventory

messagegoogle.protobuf.StringValue

message in the audit log.

eg: "user logged in"

tagsfmp.MapStringString

tags associated with the audit log.

eg: tags: {mnemonic: DEVICE_PROVISIONING_SUCCESS}

Auditlog

Auditlog contains the different fields as well as the formatted log.

Field NameTypeDescription
keyAuditlogKey

key is the unique key for each message.

attributesAttributes

attributes are the different fields that make up the audit log.

loggoogle.protobuf.StringValue

log is the formatted log message containing the different attributes

including timestamp, serviceName, severity , userName in addition to

the message.

May 17 12:50:54 host service Message: user logged in, User: abc

AuditlogKey

AuditlogKey is the unique key for each message.

Field NameTypeDescription
idgoogle.protobuf.StringValue

id is the unique uuid for an audit log.

Category

Category organizes audit logs into different groups using the CategoryType and the identifier eg: filter:[{category:{type:CATEGORY_TYPE_INVENTORY,identifier:abc}}] filters all logs associated with the service "inventory" and device abc

Field NameTypeDescription
typeCategoryType

type of the category.

identifiergoogle.protobuf.StringValue

identifier is the object with which we want to filter the category.

eg: fetch all logs from the device with id abc

Here the category is inventory and the identifier is abc.

custom_typegoogle.protobuf.StringValue

custom_type is a custom category that can be created by the user.

this is used if none of the existing categories can support the users's usecase.

Filter

Filter are the different filters that can be applied.

Field NameTypeDescription
categoryCategory

category filters based on category of the logs.

eg:

{filter:[{category:{custom_type: abc}}]}

filters all logs associated with the service abc.

queriesfmp.RepeatedString

queries is the list of strings that should be present in the log.

eg: {filter:[{queries:{values:[abc]}}]} searches for all

logs containing the string abc.

tagsfmp.MapStringString

tags filters based on tags associated with the log.

eg: {filter:[{tags:{values:{id:xyz}}}]}

searches for all logs associates with the tag

id:xyz.

severitySeverity

severity is level of importance or urgency of the audit log message.

usergoogle.protobuf.StringValue

user filters the audit logs by given username across categories.

CategoryType

CategoryType is the type of the category

NameNumberDescription
CATEGORY_TYPE_UNSPECIFIED0

CATEGORY_TYPE_UNSPECIFIED categoryType

CATEGORY_TYPE_INVENTORY1

CATEGORY_TYPE_INVENTORY categoryType

the identifier for this category is the deviceId

CATEGORY_TYPE_CONFIGLET2

CATEGORY_TYPE_CONFIGLET categoryType

the identifier for this category is a custom identifier defined by the user.

CATEGORY_TYPE_IMAGE3

CATEGORY_TYPE_IMAGE categoryType

the identifier for this category is a custom identifier defined by the user.

CATEGORY_TYPE_LABEL4

CATEGORY_TYPE_LABEL categoryType

the identifier for this category is a custom identifier defined by the user.

CATEGORY_TYPE_USER5

CATEGORY_TYPE_USER categoryType

the identifier for this category is a custom identifier defined by the user.

CATEGORY_TYPE_CHANGECONTROL6

CATEGORY_TYPE_CHANGECONTROL categoryType

the identifier for this category is a custom identifier defined by the user.

CATEGORY_TYPE_ROLE7

CATEGORY_TYPE_ROLE categoryType

the identifier for this category is a custom identifier defined by the user.

CATEGORY_TYPE_SNAPSHOT8

CATEGORY_TYPE_SNAPSHOT categoryType

the identifier for this category is a custom identifier defined by the user.

CATEGORY_TYPE_EXECACTION9

CATEGORY_TYPE_EXECACTION categoryType

the identifier for this category is a custom identifier defined by the user.

CATEGORY_TYPE_ACCESSCONTROL10

CATEGORY_TYPE_ACCESSCONTROL categoryType

the identifier for this category is a custom identifier defined by the user.

Severity

Severity is the level of criticality of the log.

NameNumberDescription
SEVERITY_UNSPECIFIED0

SEVERITY_UNSPECIFIED severity

SEVERITY_EMERGENCY1

SEVERITY_EMERGENCY severity

SEVERITY_ALERT2

SEVERITY_ALERT severity

SEVERITY_CRITICAL3

SEVERITY_CRITICAL severity

SEVERITY_ERROR4

SEVERITY_ERROR severity

SEVERITY_WARNING5

SEVERITY_WARNING severity

SEVERITY_NOTICE6

SEVERITY_NOTICE severity

SEVERITY_INFO7

SEVERITY_INFO severity

SEVERITY_DEBUG8

SEVERITY_DEBUG severity

Top

arista/auditlog.v1/services.gen.proto

AuditlogRequest

Field NameTypeDescription
keyAuditlogKey

Key uniquely identifies a Auditlog instance to retrieve.

This value must be populated.

timegoogle.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.

AuditlogResponse

Field NameTypeDescription
valueAuditlog

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.

timegoogle.protobuf.Timestamp

Time carries the (UTC) timestamp of the last-modification of the

Auditlog instance in this response.

AuditlogSomeRequest

Field NameTypeDescription
keysAuditlogKey[...]

timegoogle.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.

AuditlogSomeResponse

Field NameTypeDescription
valueAuditlog

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.

errorgoogle.protobuf.StringValue

Error is an optional field.

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

timegoogle.protobuf.Timestamp

Time carries the (UTC) timestamp of the last-modification of the

Auditlog instance in this response.

AuditlogStreamRequest

Field NameTypeDescription
filterFilter[...]

For each Auditlog in the list, all populated fields are considered ANDed together

as a filtering operation. Similarly, the list itself is ORed such that any individual

filter that matches a given Auditlog is streamed to the user.

timearista.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.

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

* end: Returns the state of each Auditlog at end.

* Each Auditlog response is fully-specified (all fields set).

* start: Returns the state of each Auditlog at start, followed by updates until now.

* Each Auditlog response at start is fully-specified, but updates may be partial.

* start and end: Returns the state of each Auditlog at start, followed by updates

until end.

* Each Auditlog response at start is fully-specified, but updates until end may

be partial.

AuditlogStreamResponse

Field NameTypeDescription
valueAuditlog

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.

timegoogle.protobuf.Timestamp

Time holds the timestamp of this Auditlog's last modification.

typearista.subscriptions.Operation

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

MetaResponse

Field NameTypeDescription
timegoogle.protobuf.Timestamp

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

typearista.subscriptions.Operation

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.

countgoogle.protobuf.UInt32Value

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

AuditlogService

Method NameRequest TypeResponse TypeDescription
GetOneAuditlogRequestAuditlogResponse

GetSomeAuditlogSomeRequestAuditlogSomeResponse stream

GetAllAuditlogStreamRequestAuditlogStreamResponse stream

SubscribeAuditlogStreamRequestAuditlogStreamResponse stream

GetMetaAuditlogStreamRequestMetaResponse

SubscribeMetaAuditlogStreamRequestMetaResponse stream