// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.36.12 // protoc v7.35.1 // source: sentry/search/v1/search.proto package searchv1 import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" unsafe "unsafe" ) const ( // Verify that this generated code is sufficiently up-to-date. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) // Verify that runtime/protoimpl is sufficiently up-to-date. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) type SearchRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // Free-text query passed to Tantivy's query parser as-is. Supports // phrase queries ("exact phrase") and wildcards (foo*) per Tantivy's // own query syntax — see /search/README.md for exactly what that does // and doesn't support in Phase 1. Query string `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"` // Max results to return. 0 (unset) uses the service's own default. Limit uint32 `protobuf:"varint,2,opt,name=limit,proto3" json:"limit,omitempty"` // tenant_id (Phase 4) selects which per-tenant Tantivy index to search // -- resolved server-side by the caller (enterprise/internal/ // searchclient, from the authenticated identity in request context), // never a value a browser/client supplies directly. Empty selects the // single default index every Phase 0-3 deployment (and every // ingest-written record today, regardless of tenant -- see // /docs/security/threat-model.md's ingest-tenancy caveat) already // uses, so this field is purely additive: an old caller that never // sets it keeps today's behavior exactly. TenantId string `protobuf:"bytes,3,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SearchRequest) Reset() { *x = SearchRequest{} mi := &file_sentry_search_v1_search_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SearchRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SearchRequest) ProtoMessage() {} func (x *SearchRequest) ProtoReflect() protoreflect.Message { mi := &file_sentry_search_v1_search_proto_msgTypes[0] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SearchRequest.ProtoReflect.Descriptor instead. func (*SearchRequest) Descriptor() ([]byte, []int) { return file_sentry_search_v1_search_proto_rawDescGZIP(), []int{0} } func (x *SearchRequest) GetQuery() string { if x != nil { return x.Query } return "" } func (x *SearchRequest) GetLimit() uint32 { if x != nil { return x.Limit } return 0 } func (x *SearchRequest) GetTenantId() string { if x != nil { return x.TenantId } return "" } type SearchResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // record_ids of matching logs, most-relevant first. Callers join these // back against ClickHouse's `logs.record_id` column to get full rows — // this service only ever returns IDs, never row data, so it stays a // pure text index rather than a second copy of the row. RecordIds []string `protobuf:"bytes,1,rep,name=record_ids,json=recordIds,proto3" json:"record_ids,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SearchResponse) Reset() { *x = SearchResponse{} mi := &file_sentry_search_v1_search_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SearchResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*SearchResponse) ProtoMessage() {} func (x *SearchResponse) ProtoReflect() protoreflect.Message { mi := &file_sentry_search_v1_search_proto_msgTypes[1] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SearchResponse.ProtoReflect.Descriptor instead. func (*SearchResponse) Descriptor() ([]byte, []int) { return file_sentry_search_v1_search_proto_rawDescGZIP(), []int{1} } func (x *SearchResponse) GetRecordIds() []string { if x != nil { return x.RecordIds } return nil } var File_sentry_search_v1_search_proto protoreflect.FileDescriptor const file_sentry_search_v1_search_proto_rawDesc = "" + "\n" + "\x1dsentry/search/v1/search.proto\x12\x12cairnobs.search.v1\"X\n" + "\rSearchRequest\x12\x14\n" + "\x05query\x18\x01 \x01(\tR\x05query\x12\x14\n" + "\x05limit\x18\x02 \x01(\rR\x05limit\x12\x1b\n" + "\ttenant_id\x18\x03 \x01(\tR\btenantId\"/\n" + "\x0eSearchResponse\x12\x1d\n" + "\n" + "record_ids\x18\x01 \x03(\tR\trecordIds2`\n" + "\rSearchService\x12O\n" + "\x06Search\x12!.cairnobs.search.v1.SearchRequest\x1a\".cairnobs.search.v1.SearchResponseB>Z cairnobs.search.v1.SearchRequest 1, // 1: cairnobs.search.v1.SearchService.Search:output_type -> cairnobs.search.v1.SearchResponse 1, // [1:2] is the sub-list for method output_type 0, // [0:1] is the sub-list for method input_type 0, // [0:0] is the sub-list for extension type_name 0, // [0:0] is the sub-list for extension extendee 0, // [0:0] is the sub-list for field type_name } func init() { file_sentry_search_v1_search_proto_init() } func file_sentry_search_v1_search_proto_init() { if File_sentry_search_v1_search_proto != nil { return } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_sentry_search_v1_search_proto_rawDesc), len(file_sentry_search_v1_search_proto_rawDesc)), NumEnums: 0, NumMessages: 2, NumExtensions: 0, NumServices: 1, }, GoTypes: file_sentry_search_v1_search_proto_goTypes, DependencyIndexes: file_sentry_search_v1_search_proto_depIdxs, MessageInfos: file_sentry_search_v1_search_proto_msgTypes, }.Build() File_sentry_search_v1_search_proto = out.File file_sentry_search_v1_search_proto_goTypes = nil file_sentry_search_v1_search_proto_depIdxs = nil }