1 // Code generated by protoc-gen-go. DO NOT EDIT.
2 // source: google/logging/v2/logging_config.proto
6 import proto "github.com/golang/protobuf/proto"
9 import _ "google.golang.org/genproto/googleapis/api/annotations"
10 import google_protobuf5 "github.com/golang/protobuf/ptypes/empty"
11 import google_protobuf4 "github.com/golang/protobuf/ptypes/timestamp"
14 context "golang.org/x/net/context"
15 grpc "google.golang.org/grpc"
18 // Reference imports to suppress errors if they are not otherwise used.
23 // Available log entry formats. Log entries can be written to Stackdriver
24 // Logging in either format and can be exported in either format.
25 // Version 2 is the preferred format.
26 type LogSink_VersionFormat int32
29 // An unspecified format version that will default to V2.
30 LogSink_VERSION_FORMAT_UNSPECIFIED LogSink_VersionFormat = 0
31 // `LogEntry` version 2 format.
32 LogSink_V2 LogSink_VersionFormat = 1
33 // `LogEntry` version 1 format.
34 LogSink_V1 LogSink_VersionFormat = 2
37 var LogSink_VersionFormat_name = map[int32]string{
38 0: "VERSION_FORMAT_UNSPECIFIED",
42 var LogSink_VersionFormat_value = map[string]int32{
43 "VERSION_FORMAT_UNSPECIFIED": 0,
48 func (x LogSink_VersionFormat) String() string {
49 return proto.EnumName(LogSink_VersionFormat_name, int32(x))
51 func (LogSink_VersionFormat) EnumDescriptor() ([]byte, []int) { return fileDescriptor2, []int{0, 0} }
53 // Describes a sink used to export log entries to one of the following
54 // destinations in any project: a Cloud Storage bucket, a BigQuery dataset, or a
55 // Cloud Pub/Sub topic. A logs filter controls which log entries are
56 // exported. The sink must be created within a project, organization, billing
57 // account, or folder.
59 // Required. The client-assigned sink identifier, unique within the
60 // project. Example: `"my-syslog-errors-to-pubsub"`. Sink identifiers are
61 // limited to 100 characters and can include only the following characters:
62 // upper and lower-case alphanumeric characters, underscores, hyphens, and
64 Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
65 // Required. The export destination:
67 // "storage.googleapis.com/[GCS_BUCKET]"
68 // "bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]"
69 // "pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]"
71 // The sink's `writer_identity`, set when the sink is created, must
72 // have permission to write to the destination or else the log
73 // entries are not exported. For more information, see
74 // [Exporting Logs With Sinks](/logging/docs/api/tasks/exporting-logs).
75 Destination string `protobuf:"bytes,3,opt,name=destination" json:"destination,omitempty"`
77 // An [advanced logs filter](/logging/docs/view/advanced_filters). The only
78 // exported log entries are those that are in the resource owning the sink and
79 // that match the filter. The filter must use the log entry format specified
80 // by the `output_version_format` parameter. For example, in the v2 format:
82 // logName="projects/[PROJECT_ID]/logs/[LOG_ID]" AND severity>=ERROR
83 Filter string `protobuf:"bytes,5,opt,name=filter" json:"filter,omitempty"`
84 // Optional. The log entry format to use for this sink's exported log
85 // entries. The v2 format is used by default.
86 // **The v1 format is deprecated** and should be used only as part of a
87 // migration effort to v2.
88 // See [Migration to the v2 API](/logging/docs/api/v2/migration-to-v2).
89 OutputVersionFormat LogSink_VersionFormat `protobuf:"varint,6,opt,name=output_version_format,json=outputVersionFormat,enum=google.logging.v2.LogSink_VersionFormat" json:"output_version_format,omitempty"`
90 // Output only. An IAM identity—a service account or group—under
91 // which Stackdriver Logging writes the exported log entries to the sink's
92 // destination. This field is set by
93 // [sinks.create](/logging/docs/api/reference/rest/v2/projects.sinks/create)
95 // [sinks.update](/logging/docs/api/reference/rest/v2/projects.sinks/update),
96 // based on the setting of `unique_writer_identity` in those methods.
98 // Until you grant this identity write-access to the destination, log entry
99 // exports from this sink will fail. For more information,
100 // see [Granting access for a
101 // resource](/iam/docs/granting-roles-to-service-accounts#granting_access_to_a_service_account_for_a_resource).
102 // Consult the destination service's documentation to determine the
103 // appropriate IAM roles to assign to the identity.
104 WriterIdentity string `protobuf:"bytes,8,opt,name=writer_identity,json=writerIdentity" json:"writer_identity,omitempty"`
105 // Optional. This field applies only to sinks owned by organizations and
106 // folders. If the field is false, the default, only the logs owned by the
107 // sink's parent resource are available for export. If the field is true, then
108 // logs from all the projects, folders, and billing accounts contained in the
109 // sink's parent resource are also available for export. Whether a particular
110 // log entry from the children is exported depends on the sink's filter
111 // expression. For example, if this field is true, then the filter
112 // `resource.type=gce_instance` would export all Compute Engine VM instance
113 // log entries from all projects in the sink's parent. To only export entries
114 // from certain child projects, filter on the project part of the log name:
116 // logName:("projects/test-project1/" OR "projects/test-project2/") AND
117 // resource.type=gce_instance
118 IncludeChildren bool `protobuf:"varint,9,opt,name=include_children,json=includeChildren" json:"include_children,omitempty"`
119 // Optional. The time at which this sink will begin exporting log entries.
120 // Log entries are exported only if their timestamp is not earlier than the
121 // start time. The default value of this field is the time the sink is
122 // created or updated.
123 StartTime *google_protobuf4.Timestamp `protobuf:"bytes,10,opt,name=start_time,json=startTime" json:"start_time,omitempty"`
124 // Optional. The time at which this sink will stop exporting log entries. Log
125 // entries are exported only if their timestamp is earlier than the end time.
126 // If this field is not supplied, there is no end time. If both a start time
127 // and an end time are provided, then the end time must be later than the
129 EndTime *google_protobuf4.Timestamp `protobuf:"bytes,11,opt,name=end_time,json=endTime" json:"end_time,omitempty"`
132 func (m *LogSink) Reset() { *m = LogSink{} }
133 func (m *LogSink) String() string { return proto.CompactTextString(m) }
134 func (*LogSink) ProtoMessage() {}
135 func (*LogSink) Descriptor() ([]byte, []int) { return fileDescriptor2, []int{0} }
137 func (m *LogSink) GetName() string {
144 func (m *LogSink) GetDestination() string {
151 func (m *LogSink) GetFilter() string {
158 func (m *LogSink) GetOutputVersionFormat() LogSink_VersionFormat {
160 return m.OutputVersionFormat
162 return LogSink_VERSION_FORMAT_UNSPECIFIED
165 func (m *LogSink) GetWriterIdentity() string {
167 return m.WriterIdentity
172 func (m *LogSink) GetIncludeChildren() bool {
174 return m.IncludeChildren
179 func (m *LogSink) GetStartTime() *google_protobuf4.Timestamp {
186 func (m *LogSink) GetEndTime() *google_protobuf4.Timestamp {
193 // The parameters to `ListSinks`.
194 type ListSinksRequest struct {
195 // Required. The parent resource whose sinks are to be listed:
197 // "projects/[PROJECT_ID]"
198 // "organizations/[ORGANIZATION_ID]"
199 // "billingAccounts/[BILLING_ACCOUNT_ID]"
200 // "folders/[FOLDER_ID]"
201 Parent string `protobuf:"bytes,1,opt,name=parent" json:"parent,omitempty"`
202 // Optional. If present, then retrieve the next batch of results from the
203 // preceding call to this method. `pageToken` must be the value of
204 // `nextPageToken` from the previous response. The values of other method
205 // parameters should be identical to those in the previous call.
206 PageToken string `protobuf:"bytes,2,opt,name=page_token,json=pageToken" json:"page_token,omitempty"`
207 // Optional. The maximum number of results to return from this request.
208 // Non-positive values are ignored. The presence of `nextPageToken` in the
209 // response indicates that more results might be available.
210 PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize" json:"page_size,omitempty"`
213 func (m *ListSinksRequest) Reset() { *m = ListSinksRequest{} }
214 func (m *ListSinksRequest) String() string { return proto.CompactTextString(m) }
215 func (*ListSinksRequest) ProtoMessage() {}
216 func (*ListSinksRequest) Descriptor() ([]byte, []int) { return fileDescriptor2, []int{1} }
218 func (m *ListSinksRequest) GetParent() string {
225 func (m *ListSinksRequest) GetPageToken() string {
232 func (m *ListSinksRequest) GetPageSize() int32 {
239 // Result returned from `ListSinks`.
240 type ListSinksResponse struct {
242 Sinks []*LogSink `protobuf:"bytes,1,rep,name=sinks" json:"sinks,omitempty"`
243 // If there might be more results than appear in this response, then
244 // `nextPageToken` is included. To get the next set of results, call the same
245 // method again using the value of `nextPageToken` as `pageToken`.
246 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken" json:"next_page_token,omitempty"`
249 func (m *ListSinksResponse) Reset() { *m = ListSinksResponse{} }
250 func (m *ListSinksResponse) String() string { return proto.CompactTextString(m) }
251 func (*ListSinksResponse) ProtoMessage() {}
252 func (*ListSinksResponse) Descriptor() ([]byte, []int) { return fileDescriptor2, []int{2} }
254 func (m *ListSinksResponse) GetSinks() []*LogSink {
261 func (m *ListSinksResponse) GetNextPageToken() string {
263 return m.NextPageToken
268 // The parameters to `GetSink`.
269 type GetSinkRequest struct {
270 // Required. The resource name of the sink:
272 // "projects/[PROJECT_ID]/sinks/[SINK_ID]"
273 // "organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]"
274 // "billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]"
275 // "folders/[FOLDER_ID]/sinks/[SINK_ID]"
277 // Example: `"projects/my-project-id/sinks/my-sink-id"`.
278 SinkName string `protobuf:"bytes,1,opt,name=sink_name,json=sinkName" json:"sink_name,omitempty"`
281 func (m *GetSinkRequest) Reset() { *m = GetSinkRequest{} }
282 func (m *GetSinkRequest) String() string { return proto.CompactTextString(m) }
283 func (*GetSinkRequest) ProtoMessage() {}
284 func (*GetSinkRequest) Descriptor() ([]byte, []int) { return fileDescriptor2, []int{3} }
286 func (m *GetSinkRequest) GetSinkName() string {
293 // The parameters to `CreateSink`.
294 type CreateSinkRequest struct {
295 // Required. The resource in which to create the sink:
297 // "projects/[PROJECT_ID]"
298 // "organizations/[ORGANIZATION_ID]"
299 // "billingAccounts/[BILLING_ACCOUNT_ID]"
300 // "folders/[FOLDER_ID]"
302 // Examples: `"projects/my-logging-project"`, `"organizations/123456789"`.
303 Parent string `protobuf:"bytes,1,opt,name=parent" json:"parent,omitempty"`
304 // Required. The new sink, whose `name` parameter is a sink identifier that
305 // is not already in use.
306 Sink *LogSink `protobuf:"bytes,2,opt,name=sink" json:"sink,omitempty"`
307 // Optional. Determines the kind of IAM identity returned as `writer_identity`
308 // in the new sink. If this value is omitted or set to false, and if the
309 // sink's parent is a project, then the value returned as `writer_identity` is
310 // the same group or service account used by Stackdriver Logging before the
311 // addition of writer identities to this API. The sink's destination must be
312 // in the same project as the sink itself.
314 // If this field is set to true, or if the sink is owned by a non-project
315 // resource such as an organization, then the value of `writer_identity` will
316 // be a unique service account used only for exports from the new sink. For
317 // more information, see `writer_identity` in [LogSink][google.logging.v2.LogSink].
318 UniqueWriterIdentity bool `protobuf:"varint,3,opt,name=unique_writer_identity,json=uniqueWriterIdentity" json:"unique_writer_identity,omitempty"`
321 func (m *CreateSinkRequest) Reset() { *m = CreateSinkRequest{} }
322 func (m *CreateSinkRequest) String() string { return proto.CompactTextString(m) }
323 func (*CreateSinkRequest) ProtoMessage() {}
324 func (*CreateSinkRequest) Descriptor() ([]byte, []int) { return fileDescriptor2, []int{4} }
326 func (m *CreateSinkRequest) GetParent() string {
333 func (m *CreateSinkRequest) GetSink() *LogSink {
340 func (m *CreateSinkRequest) GetUniqueWriterIdentity() bool {
342 return m.UniqueWriterIdentity
347 // The parameters to `UpdateSink`.
348 type UpdateSinkRequest struct {
349 // Required. The full resource name of the sink to update, including the
350 // parent resource and the sink identifier:
352 // "projects/[PROJECT_ID]/sinks/[SINK_ID]"
353 // "organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]"
354 // "billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]"
355 // "folders/[FOLDER_ID]/sinks/[SINK_ID]"
357 // Example: `"projects/my-project-id/sinks/my-sink-id"`.
358 SinkName string `protobuf:"bytes,1,opt,name=sink_name,json=sinkName" json:"sink_name,omitempty"`
359 // Required. The updated sink, whose name is the same identifier that appears
360 // as part of `sink_name`. If `sink_name` does not exist, then
361 // this method creates a new sink.
362 Sink *LogSink `protobuf:"bytes,2,opt,name=sink" json:"sink,omitempty"`
364 // [sinks.create](/logging/docs/api/reference/rest/v2/projects.sinks/create)
365 // for a description of this field. When updating a sink, the effect of this
366 // field on the value of `writer_identity` in the updated sink depends on both
367 // the old and new values of this field:
369 // + If the old and new values of this field are both false or both true,
370 // then there is no change to the sink's `writer_identity`.
371 // + If the old value is false and the new value is true, then
372 // `writer_identity` is changed to a unique service account.
373 // + It is an error if the old value is true and the new value is false.
374 UniqueWriterIdentity bool `protobuf:"varint,3,opt,name=unique_writer_identity,json=uniqueWriterIdentity" json:"unique_writer_identity,omitempty"`
377 func (m *UpdateSinkRequest) Reset() { *m = UpdateSinkRequest{} }
378 func (m *UpdateSinkRequest) String() string { return proto.CompactTextString(m) }
379 func (*UpdateSinkRequest) ProtoMessage() {}
380 func (*UpdateSinkRequest) Descriptor() ([]byte, []int) { return fileDescriptor2, []int{5} }
382 func (m *UpdateSinkRequest) GetSinkName() string {
389 func (m *UpdateSinkRequest) GetSink() *LogSink {
396 func (m *UpdateSinkRequest) GetUniqueWriterIdentity() bool {
398 return m.UniqueWriterIdentity
403 // The parameters to `DeleteSink`.
404 type DeleteSinkRequest struct {
405 // Required. The full resource name of the sink to delete, including the
406 // parent resource and the sink identifier:
408 // "projects/[PROJECT_ID]/sinks/[SINK_ID]"
409 // "organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]"
410 // "billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]"
411 // "folders/[FOLDER_ID]/sinks/[SINK_ID]"
413 // Example: `"projects/my-project-id/sinks/my-sink-id"`.
414 SinkName string `protobuf:"bytes,1,opt,name=sink_name,json=sinkName" json:"sink_name,omitempty"`
417 func (m *DeleteSinkRequest) Reset() { *m = DeleteSinkRequest{} }
418 func (m *DeleteSinkRequest) String() string { return proto.CompactTextString(m) }
419 func (*DeleteSinkRequest) ProtoMessage() {}
420 func (*DeleteSinkRequest) Descriptor() ([]byte, []int) { return fileDescriptor2, []int{6} }
422 func (m *DeleteSinkRequest) GetSinkName() string {
430 proto.RegisterType((*LogSink)(nil), "google.logging.v2.LogSink")
431 proto.RegisterType((*ListSinksRequest)(nil), "google.logging.v2.ListSinksRequest")
432 proto.RegisterType((*ListSinksResponse)(nil), "google.logging.v2.ListSinksResponse")
433 proto.RegisterType((*GetSinkRequest)(nil), "google.logging.v2.GetSinkRequest")
434 proto.RegisterType((*CreateSinkRequest)(nil), "google.logging.v2.CreateSinkRequest")
435 proto.RegisterType((*UpdateSinkRequest)(nil), "google.logging.v2.UpdateSinkRequest")
436 proto.RegisterType((*DeleteSinkRequest)(nil), "google.logging.v2.DeleteSinkRequest")
437 proto.RegisterEnum("google.logging.v2.LogSink_VersionFormat", LogSink_VersionFormat_name, LogSink_VersionFormat_value)
440 // Reference imports to suppress errors if they are not otherwise used.
441 var _ context.Context
442 var _ grpc.ClientConn
444 // This is a compile-time assertion to ensure that this generated file
445 // is compatible with the grpc package it is being compiled against.
446 const _ = grpc.SupportPackageIsVersion4
448 // Client API for ConfigServiceV2 service
450 type ConfigServiceV2Client interface {
452 ListSinks(ctx context.Context, in *ListSinksRequest, opts ...grpc.CallOption) (*ListSinksResponse, error)
454 GetSink(ctx context.Context, in *GetSinkRequest, opts ...grpc.CallOption) (*LogSink, error)
455 // Creates a sink that exports specified log entries to a destination. The
456 // export of newly-ingested log entries begins immediately, unless the current
457 // time is outside the sink's start and end times or the sink's
458 // `writer_identity` is not permitted to write to the destination. A sink can
459 // export log entries only from the resource owning the sink.
460 CreateSink(ctx context.Context, in *CreateSinkRequest, opts ...grpc.CallOption) (*LogSink, error)
461 // Updates a sink. If the named sink doesn't exist, then this method is
463 // [sinks.create](/logging/docs/api/reference/rest/v2/projects.sinks/create).
464 // If the named sink does exist, then this method replaces the following
465 // fields in the existing sink with values from the new sink: `destination`,
466 // `filter`, `output_version_format`, `start_time`, and `end_time`.
467 // The updated filter might also have a new `writer_identity`; see the
468 // `unique_writer_identity` field.
469 UpdateSink(ctx context.Context, in *UpdateSinkRequest, opts ...grpc.CallOption) (*LogSink, error)
470 // Deletes a sink. If the sink has a unique `writer_identity`, then that
471 // service account is also deleted.
472 DeleteSink(ctx context.Context, in *DeleteSinkRequest, opts ...grpc.CallOption) (*google_protobuf5.Empty, error)
475 type configServiceV2Client struct {
479 func NewConfigServiceV2Client(cc *grpc.ClientConn) ConfigServiceV2Client {
480 return &configServiceV2Client{cc}
483 func (c *configServiceV2Client) ListSinks(ctx context.Context, in *ListSinksRequest, opts ...grpc.CallOption) (*ListSinksResponse, error) {
484 out := new(ListSinksResponse)
485 err := grpc.Invoke(ctx, "/google.logging.v2.ConfigServiceV2/ListSinks", in, out, c.cc, opts...)
492 func (c *configServiceV2Client) GetSink(ctx context.Context, in *GetSinkRequest, opts ...grpc.CallOption) (*LogSink, error) {
494 err := grpc.Invoke(ctx, "/google.logging.v2.ConfigServiceV2/GetSink", in, out, c.cc, opts...)
501 func (c *configServiceV2Client) CreateSink(ctx context.Context, in *CreateSinkRequest, opts ...grpc.CallOption) (*LogSink, error) {
503 err := grpc.Invoke(ctx, "/google.logging.v2.ConfigServiceV2/CreateSink", in, out, c.cc, opts...)
510 func (c *configServiceV2Client) UpdateSink(ctx context.Context, in *UpdateSinkRequest, opts ...grpc.CallOption) (*LogSink, error) {
512 err := grpc.Invoke(ctx, "/google.logging.v2.ConfigServiceV2/UpdateSink", in, out, c.cc, opts...)
519 func (c *configServiceV2Client) DeleteSink(ctx context.Context, in *DeleteSinkRequest, opts ...grpc.CallOption) (*google_protobuf5.Empty, error) {
520 out := new(google_protobuf5.Empty)
521 err := grpc.Invoke(ctx, "/google.logging.v2.ConfigServiceV2/DeleteSink", in, out, c.cc, opts...)
528 // Server API for ConfigServiceV2 service
530 type ConfigServiceV2Server interface {
532 ListSinks(context.Context, *ListSinksRequest) (*ListSinksResponse, error)
534 GetSink(context.Context, *GetSinkRequest) (*LogSink, error)
535 // Creates a sink that exports specified log entries to a destination. The
536 // export of newly-ingested log entries begins immediately, unless the current
537 // time is outside the sink's start and end times or the sink's
538 // `writer_identity` is not permitted to write to the destination. A sink can
539 // export log entries only from the resource owning the sink.
540 CreateSink(context.Context, *CreateSinkRequest) (*LogSink, error)
541 // Updates a sink. If the named sink doesn't exist, then this method is
543 // [sinks.create](/logging/docs/api/reference/rest/v2/projects.sinks/create).
544 // If the named sink does exist, then this method replaces the following
545 // fields in the existing sink with values from the new sink: `destination`,
546 // `filter`, `output_version_format`, `start_time`, and `end_time`.
547 // The updated filter might also have a new `writer_identity`; see the
548 // `unique_writer_identity` field.
549 UpdateSink(context.Context, *UpdateSinkRequest) (*LogSink, error)
550 // Deletes a sink. If the sink has a unique `writer_identity`, then that
551 // service account is also deleted.
552 DeleteSink(context.Context, *DeleteSinkRequest) (*google_protobuf5.Empty, error)
555 func RegisterConfigServiceV2Server(s *grpc.Server, srv ConfigServiceV2Server) {
556 s.RegisterService(&_ConfigServiceV2_serviceDesc, srv)
559 func _ConfigServiceV2_ListSinks_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
560 in := new(ListSinksRequest)
561 if err := dec(in); err != nil {
564 if interceptor == nil {
565 return srv.(ConfigServiceV2Server).ListSinks(ctx, in)
567 info := &grpc.UnaryServerInfo{
569 FullMethod: "/google.logging.v2.ConfigServiceV2/ListSinks",
571 handler := func(ctx context.Context, req interface{}) (interface{}, error) {
572 return srv.(ConfigServiceV2Server).ListSinks(ctx, req.(*ListSinksRequest))
574 return interceptor(ctx, in, info, handler)
577 func _ConfigServiceV2_GetSink_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
578 in := new(GetSinkRequest)
579 if err := dec(in); err != nil {
582 if interceptor == nil {
583 return srv.(ConfigServiceV2Server).GetSink(ctx, in)
585 info := &grpc.UnaryServerInfo{
587 FullMethod: "/google.logging.v2.ConfigServiceV2/GetSink",
589 handler := func(ctx context.Context, req interface{}) (interface{}, error) {
590 return srv.(ConfigServiceV2Server).GetSink(ctx, req.(*GetSinkRequest))
592 return interceptor(ctx, in, info, handler)
595 func _ConfigServiceV2_CreateSink_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
596 in := new(CreateSinkRequest)
597 if err := dec(in); err != nil {
600 if interceptor == nil {
601 return srv.(ConfigServiceV2Server).CreateSink(ctx, in)
603 info := &grpc.UnaryServerInfo{
605 FullMethod: "/google.logging.v2.ConfigServiceV2/CreateSink",
607 handler := func(ctx context.Context, req interface{}) (interface{}, error) {
608 return srv.(ConfigServiceV2Server).CreateSink(ctx, req.(*CreateSinkRequest))
610 return interceptor(ctx, in, info, handler)
613 func _ConfigServiceV2_UpdateSink_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
614 in := new(UpdateSinkRequest)
615 if err := dec(in); err != nil {
618 if interceptor == nil {
619 return srv.(ConfigServiceV2Server).UpdateSink(ctx, in)
621 info := &grpc.UnaryServerInfo{
623 FullMethod: "/google.logging.v2.ConfigServiceV2/UpdateSink",
625 handler := func(ctx context.Context, req interface{}) (interface{}, error) {
626 return srv.(ConfigServiceV2Server).UpdateSink(ctx, req.(*UpdateSinkRequest))
628 return interceptor(ctx, in, info, handler)
631 func _ConfigServiceV2_DeleteSink_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
632 in := new(DeleteSinkRequest)
633 if err := dec(in); err != nil {
636 if interceptor == nil {
637 return srv.(ConfigServiceV2Server).DeleteSink(ctx, in)
639 info := &grpc.UnaryServerInfo{
641 FullMethod: "/google.logging.v2.ConfigServiceV2/DeleteSink",
643 handler := func(ctx context.Context, req interface{}) (interface{}, error) {
644 return srv.(ConfigServiceV2Server).DeleteSink(ctx, req.(*DeleteSinkRequest))
646 return interceptor(ctx, in, info, handler)
649 var _ConfigServiceV2_serviceDesc = grpc.ServiceDesc{
650 ServiceName: "google.logging.v2.ConfigServiceV2",
651 HandlerType: (*ConfigServiceV2Server)(nil),
652 Methods: []grpc.MethodDesc{
654 MethodName: "ListSinks",
655 Handler: _ConfigServiceV2_ListSinks_Handler,
658 MethodName: "GetSink",
659 Handler: _ConfigServiceV2_GetSink_Handler,
662 MethodName: "CreateSink",
663 Handler: _ConfigServiceV2_CreateSink_Handler,
666 MethodName: "UpdateSink",
667 Handler: _ConfigServiceV2_UpdateSink_Handler,
670 MethodName: "DeleteSink",
671 Handler: _ConfigServiceV2_DeleteSink_Handler,
674 Streams: []grpc.StreamDesc{},
675 Metadata: "google/logging/v2/logging_config.proto",
678 func init() { proto.RegisterFile("google/logging/v2/logging_config.proto", fileDescriptor2) }
680 var fileDescriptor2 = []byte{
681 // 818 bytes of a gzipped FileDescriptorProto
682 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x55, 0xff, 0x6e, 0xdb, 0x54,
683 0x14, 0xc6, 0xe9, 0xaf, 0xe4, 0x54, 0x6b, 0x93, 0x0b, 0x2b, 0x56, 0xca, 0x58, 0x30, 0xdb, 0x08,
684 0x41, 0xd8, 0x25, 0x80, 0xc4, 0x0f, 0x21, 0xc4, 0xb2, 0x76, 0xaa, 0x54, 0xba, 0xca, 0xe9, 0x82,
685 0x84, 0x90, 0x2c, 0x2f, 0x3e, 0x31, 0x97, 0xd9, 0xf7, 0x7a, 0xf6, 0x75, 0x60, 0x9b, 0x2a, 0x01,
686 0x6f, 0x80, 0x90, 0x78, 0x08, 0x9e, 0x81, 0xb7, 0xe0, 0x15, 0x78, 0x0e, 0x84, 0xee, 0x8f, 0xac,
687 0x69, 0x1d, 0x42, 0xff, 0xe2, 0xaf, 0xdc, 0xfb, 0x9d, 0x73, 0xee, 0xf7, 0x9d, 0x73, 0x3e, 0x39,
688 0x70, 0x27, 0xe6, 0x3c, 0x4e, 0xd0, 0x4b, 0x78, 0x1c, 0x53, 0x16, 0x7b, 0xd3, 0xfe, 0xec, 0x18,
689 0x8c, 0x39, 0x9b, 0xd0, 0xd8, 0xcd, 0x72, 0x2e, 0x38, 0x69, 0xe9, 0x3c, 0xd7, 0x04, 0xdd, 0x69,
690 0xbf, 0xfd, 0x9a, 0x29, 0x0d, 0x33, 0xea, 0x85, 0x8c, 0x71, 0x11, 0x0a, 0xca, 0x59, 0xa1, 0x0b,
691 0xda, 0xbb, 0x26, 0xaa, 0x6e, 0x8f, 0xca, 0x89, 0x87, 0x69, 0x26, 0x9e, 0x9a, 0xe0, 0xcd, 0xcb,
692 0x41, 0x41, 0x53, 0x2c, 0x44, 0x98, 0x66, 0x3a, 0xc1, 0xf9, 0x63, 0x05, 0x36, 0x8e, 0x78, 0x3c,
693 0xa4, 0xec, 0x31, 0x21, 0xb0, 0xca, 0xc2, 0x14, 0x6d, 0xab, 0x63, 0x75, 0x1b, 0xbe, 0x3a, 0x93,
694 0x0e, 0x6c, 0x46, 0x58, 0x08, 0xca, 0x14, 0xa7, 0xbd, 0xa2, 0x42, 0xf3, 0x10, 0xd9, 0x81, 0xf5,
695 0x09, 0x4d, 0x04, 0xe6, 0xf6, 0x9a, 0x0a, 0x9a, 0x1b, 0xf9, 0x06, 0xae, 0xf3, 0x52, 0x64, 0xa5,
696 0x08, 0xa6, 0x98, 0x17, 0x94, 0xb3, 0x60, 0xc2, 0xf3, 0x34, 0x14, 0xf6, 0x7a, 0xc7, 0xea, 0x6e,
697 0xf5, 0xbb, 0x6e, 0xa5, 0x51, 0xd7, 0x08, 0x71, 0x47, 0xba, 0xe0, 0x40, 0xe5, 0xfb, 0x2f, 0xeb,
698 0x67, 0x2e, 0x80, 0xe4, 0x2d, 0xd8, 0xfe, 0x3e, 0xa7, 0x02, 0xf3, 0x80, 0x46, 0xc8, 0x04, 0x15,
699 0x4f, 0xed, 0xba, 0xa2, 0xdf, 0xd2, 0xf0, 0xa1, 0x41, 0xc9, 0xdb, 0xd0, 0xa4, 0x6c, 0x9c, 0x94,
700 0x11, 0x06, 0xe3, 0x6f, 0x69, 0x12, 0xe5, 0xc8, 0xec, 0x46, 0xc7, 0xea, 0xd6, 0xfd, 0x6d, 0x83,
701 0x0f, 0x0c, 0x4c, 0x3e, 0x06, 0x28, 0x44, 0x98, 0x8b, 0x40, 0x0e, 0xc9, 0x86, 0x8e, 0xd5, 0xdd,
702 0xec, 0xb7, 0x67, 0x32, 0x67, 0x13, 0x74, 0x4f, 0x67, 0x13, 0xf4, 0x1b, 0x2a, 0x5b, 0xde, 0xc9,
703 0x87, 0x50, 0x47, 0x16, 0xe9, 0xc2, 0xcd, 0xff, 0x2c, 0xdc, 0x40, 0x16, 0xc9, 0x9b, 0xf3, 0x39,
704 0x5c, 0xbb, 0xd8, 0xd6, 0xeb, 0xd0, 0x1e, 0xed, 0xfb, 0xc3, 0xc3, 0x07, 0xc7, 0xc1, 0xc1, 0x03,
705 0xff, 0xcb, 0x2f, 0x4e, 0x83, 0x87, 0xc7, 0xc3, 0x93, 0xfd, 0xc1, 0xe1, 0xc1, 0xe1, 0xfe, 0xbd,
706 0xe6, 0x4b, 0x64, 0x1d, 0x6a, 0xa3, 0x7e, 0xd3, 0x52, 0xbf, 0xef, 0x35, 0x6b, 0xce, 0x04, 0x9a,
707 0x47, 0xb4, 0x10, 0x72, 0x6a, 0x85, 0x8f, 0x4f, 0x4a, 0x2c, 0x84, 0x5c, 0x48, 0x16, 0xe6, 0xc8,
708 0x84, 0x59, 0xa4, 0xb9, 0x91, 0x1b, 0x00, 0x59, 0x18, 0x63, 0x20, 0xf8, 0x63, 0x64, 0x76, 0x4d,
709 0xc5, 0x1a, 0x12, 0x39, 0x95, 0x00, 0xd9, 0x05, 0x75, 0x09, 0x0a, 0xfa, 0x0c, 0xd5, 0x9e, 0xd7,
710 0xfc, 0xba, 0x04, 0x86, 0xf4, 0x19, 0x3a, 0x29, 0xb4, 0xe6, 0x78, 0x8a, 0x8c, 0xb3, 0x02, 0xc9,
711 0x1e, 0xac, 0x15, 0x12, 0xb0, 0xad, 0xce, 0xca, 0x7c, 0xc7, 0xd5, 0x8d, 0xfa, 0x3a, 0x91, 0xdc,
712 0x81, 0x6d, 0x86, 0x3f, 0x88, 0xa0, 0xa2, 0xe3, 0x9a, 0x84, 0x4f, 0x66, 0x5a, 0x9c, 0x77, 0x61,
713 0xeb, 0x3e, 0x2a, 0xb6, 0x59, 0x53, 0xbb, 0xd0, 0x90, 0x4f, 0x04, 0x73, 0x06, 0xad, 0x4b, 0xe0,
714 0x38, 0x4c, 0xd1, 0xf9, 0xc5, 0x82, 0xd6, 0x20, 0xc7, 0x50, 0xe0, 0x7c, 0xc9, 0xbf, 0xcd, 0xc1,
715 0x85, 0x55, 0x59, 0xa9, 0x98, 0x97, 0xab, 0x56, 0x79, 0xe4, 0x03, 0xd8, 0x29, 0x19, 0x7d, 0x52,
716 0x62, 0x70, 0xd9, 0x71, 0x2b, 0xca, 0x47, 0xaf, 0xe8, 0xe8, 0x57, 0x17, 0x7c, 0xe7, 0xfc, 0x66,
717 0x41, 0xeb, 0x61, 0x16, 0x5d, 0xd2, 0xb4, 0xac, 0x8d, 0xff, 0x49, 0xd8, 0x1e, 0xb4, 0xee, 0x61,
718 0x82, 0x57, 0xd7, 0xd5, 0xff, 0x7b, 0x15, 0xb6, 0x07, 0xea, 0x1b, 0x35, 0xc4, 0x7c, 0x4a, 0xc7,
719 0x38, 0xea, 0x93, 0x33, 0x68, 0xbc, 0x30, 0x04, 0x79, 0x73, 0x91, 0xd4, 0x4b, 0xb6, 0x6c, 0xdf,
720 0x5a, 0x9e, 0xa4, 0x3d, 0xe5, 0xdc, 0xfe, 0xf9, 0xcf, 0xbf, 0x7e, 0xad, 0xdd, 0x24, 0x37, 0xe4,
721 0x07, 0xf2, 0xb9, 0xde, 0xd8, 0x67, 0x59, 0xce, 0xbf, 0xc3, 0xb1, 0x28, 0xbc, 0xde, 0x99, 0xa7,
722 0x8d, 0x24, 0x60, 0xc3, 0x18, 0x84, 0xbc, 0xb1, 0xe0, 0xdd, 0x8b, 0xe6, 0x69, 0x2f, 0x19, 0xa5,
723 0xd3, 0x53, 0x84, 0xb7, 0x88, 0xa3, 0x08, 0x5f, 0x0c, 0x61, 0x8e, 0x53, 0x53, 0x7a, 0xbd, 0x33,
724 0xf2, 0x1c, 0xe0, 0xdc, 0x66, 0x64, 0x51, 0x43, 0x15, 0x17, 0x2e, 0xe5, 0x7e, 0x47, 0x71, 0xdf,
725 0x76, 0x96, 0x37, 0xfb, 0x89, 0xde, 0xf6, 0x8f, 0x16, 0xc0, 0xb9, 0xa1, 0x16, 0xb2, 0x57, 0xfc,
726 0xb6, 0x94, 0x7d, 0x4f, 0xb1, 0xf7, 0xda, 0x57, 0xe8, 0xdc, 0x48, 0x98, 0x02, 0x9c, 0x5b, 0x67,
727 0xa1, 0x82, 0x8a, 0xb3, 0xda, 0x3b, 0x95, 0xef, 0xe0, 0xbe, 0xfc, 0x7f, 0x9a, 0xcd, 0xbd, 0x77,
728 0x05, 0xf6, 0xbb, 0x3f, 0x59, 0x70, 0x7d, 0xcc, 0xd3, 0x2a, 0xdf, 0x5d, 0x72, 0xa4, 0xcf, 0xda,
729 0x9e, 0x27, 0x92, 0xe2, 0xc4, 0xfa, 0xfa, 0x23, 0x93, 0x18, 0xf3, 0x24, 0x64, 0xb1, 0xcb, 0xf3,
730 0xd8, 0x8b, 0x91, 0x29, 0x01, 0x9e, 0x0e, 0x85, 0x19, 0x2d, 0xe6, 0xfe, 0x8a, 0x3f, 0x35, 0xc7,
731 0xdf, 0x6b, 0xaf, 0xde, 0xd7, 0xa5, 0x83, 0x84, 0x97, 0x91, 0x6b, 0x5e, 0x77, 0x47, 0xfd, 0x47,
732 0xeb, 0xaa, 0xfc, 0xfd, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0xda, 0xa4, 0xe3, 0x1e, 0xc8, 0x07,