Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(44)

Side by Side Diff: common/proto/logdog/svcconfig/config.proto

Issue 1863973002: LogDog: Update to archival V2. (Closed) Base URL: https://github.com/luci/luci-go@grpcutil-errors
Patch Set: Fix proto comment. Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « common/logdog/coordinator/stream_test.go ('k') | common/proto/logdog/svcconfig/config.pb.go » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 syntax = "proto3"; 5 syntax = "proto3";
6 6
7 package svcconfig; 7 package svcconfig;
8 8
9 import "transport.proto"; 9 import "transport.proto";
10 import "storage.proto"; 10 import "storage.proto";
(...skipping 21 matching lines...) Expand all
32 string project = 1; 32 string project = 1;
33 33
34 // The name of the authentication group for administrators. 34 // The name of the authentication group for administrators.
35 string admin_auth_group = 10; 35 string admin_auth_group = 10;
36 // The name of the authentication group for backend services. 36 // The name of the authentication group for backend services.
37 string service_auth_group = 11; 37 string service_auth_group = 11;
38 38
39 // A list of origin URLs that are allowed to perform CORS RPC calls. 39 // A list of origin URLs that are allowed to perform CORS RPC calls.
40 repeated string rpc_allow_origins = 20; 40 repeated string rpc_allow_origins = 20;
41 41
42 // The name of the archive task queue. 42 // The full path of the archival Pub/Sub topic.
43 string archive_task_queue = 30;
44 // The amount of time after a log has been terminated before it is candidate
45 // for archival.
46 // 43 //
47 // Archival triggered by this delay will NOT succeed if any log entries are 44 // The Coordinator must have permission to publish to this topic.
48 // missing from intermediate storage. 45 string archive_topic = 30;
46
47 // The amount of time after an archive request has been dispatched before it
48 // should be executed.
49 // 49 //
50 // This should be based on a period of time where it's reasonable to expect 50 // Since terminal messages can arrive out of order, the archival request may
51 // that all log messages in the transport have arrived for a given log stream. 51 // be kicked off before all of the log stream data has been loaded into
52 // Since the transport doesn't have to guarantee in-order delivery, this 52 // intermediate storage. If this happens, the Archivist will retry archival
53 // should allow for the case where the terminal log entry arrives before some 53 // later autometically.
54 // of the intermediate log entries. This will help avoid triggering 54 //
55 // archive attempts that are doomed to fail because of standard transport lag. 55 // This parameter is an optimization to stop the archivist from wasting its
56 google.protobuf.Duration archive_delay = 31; 56 // time until the log stream has a reasonable expectation of being available.
57 google.protobuf.Duration archive_settle_delay = 31;
58
57 // The amount of time before a log stream is candidate for archival regardless 59 // The amount of time before a log stream is candidate for archival regardless
58 // of whether or not it's been terminated or complete. 60 // of whether or not it's been terminated or complete.
59 // 61 //
60 // This endpoint is a failsafe designed to ensure that log streams with 62 // This is a failsafe designed to ensure that log streams with missing records
61 // missing records or no terminal record (e.g., Butler crashed) are eventually 63 // or no terminal record (e.g., Butler crashed) are eventually archived.
62 // moved out of intermediate storage.
63 // 64 //
64 // This must be >= `archive_delay`, and should be fairly large (days) to allow 65 // This should be fairly large (days) to avoid prematurely archiving
65 // for the log stream to complete and for all available log entries to be 66 // long-running streams, but should be considerably smaller than the
66 // added to intermediate storage. 67 // intermediate storage data retention period.
67 google.protobuf.Duration archive_delay_max = 32; 68 google.protobuf.Duration archive_delay_max = 32;
68 } 69 }
69 70
70 // Collector is the set of configuration parameters for Collector instances. 71 // Collector is the set of configuration parameters for Collector instances.
71 message Collector { 72 message Collector {
72 // The maximum number of concurrent transport messages to process. If <= 0, 73 // The maximum number of concurrent transport messages to process. If <= 0,
73 // a default will be chosen based on the transport. 74 // a default will be chosen based on the transport.
74 int32 max_concurrent_messages = 1; 75 int32 max_concurrent_messages = 1;
75 76
76 // The maximum number of concurrent workers to process each ingested message. 77 // The maximum number of concurrent workers to process each ingested message.
77 // If <= 0, collector.DefaultMaxMessageWorkers will be used. 78 // If <= 0, collector.DefaultMaxMessageWorkers will be used.
78 int32 max_message_workers = 2; 79 int32 max_message_workers = 2;
79 80
80 // The maximum number of log stream states to cache locally. If <= 0, a 81 // The maximum number of log stream states to cache locally. If <= 0, a
81 // default will be used. 82 // default will be used.
82 int32 state_cache_size = 3; 83 int32 state_cache_size = 3;
83 84
84 // The maximum amount of time that cached stream state is valid. If <= 0, a 85 // The maximum amount of time that cached stream state is valid. If <= 0, a
85 // default will be used. 86 // default will be used.
86 google.protobuf.Duration state_cache_expiration = 4; 87 google.protobuf.Duration state_cache_expiration = 4;
87 } 88 }
88 89
89 // Configuration for the Archivist microservice. 90 // Configuration for the Archivist microservice.
90 message Archivist { 91 message Archivist {
92 // The name of the archival Pub/Sub subscription.
93 //
94 // This should be connected to "archive_topic", and the Archivist must have
95 // permission to consume from this subscription.
96 string subscription = 1;
97
91 // The number of tasks to run at a time. If blank, the archivist will choose a 98 // The number of tasks to run at a time. If blank, the archivist will choose a
92 // default value. 99 // default value.
93 int32 tasks = 1; 100 int32 tasks = 2;
94 101
95 // The name of the Google Storage bucket and optional base path to archive 102 // The name of the Google Storage bucket and optional base path to archive
96 // into. For example: gs://foo/bar 103 // into. For example: gs://foo/bar
97 // 104 //
98 // The bucket name must be included (e.g., "gs://foo"). The remainder of the 105 // The bucket name must be included (e.g., "gs://foo"). The remainder of the
99 // base path is optional based on desired archive location. 106 // base path is optional based on desired archive location.
100 string gs_base = 10; 107 string gs_base = 3;
108 // The name of the staging storage bucket. Uses same notation as "gs_base".
109 string gs_staging_base = 4;
110
101 // If not zero, the maximum number of stream indices between index entries. 111 // If not zero, the maximum number of stream indices between index entries.
102 int32 stream_index_range = 11; 112 int32 stream_index_range = 10;
103 // If not zero, the maximum number of prefix indices between index entries. 113 // If not zero, the maximum number of prefix indices between index entries.
104 int32 prefix_index_range = 12; 114 int32 prefix_index_range = 11;
105 // If not zero, the maximum number of log data bytes between index entries. 115 // If not zero, the maximum number of log data bytes between index entries.
106 int32 byte_range = 13; 116 int32 byte_range = 12;
107 } 117 }
OLDNEW
« no previous file with comments | « common/logdog/coordinator/stream_test.go ('k') | common/proto/logdog/svcconfig/config.pb.go » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698