@@ -67,14 +67,18 @@ message StreamingMessage {
6767
6868 // Worker logs a message back to the host
6969 RpcLog rpc_log = 2 ;
70-
70+
7171 FunctionEnvironmentReloadRequest function_environment_reload_request = 25 ;
7272
7373 FunctionEnvironmentReloadResponse function_environment_reload_response = 26 ;
7474
7575 // Ask the worker to close any open shared memory resources for a given invocation
7676 CloseSharedMemoryResourcesRequest close_shared_memory_resources_request = 27 ;
7777 CloseSharedMemoryResourcesResponse close_shared_memory_resources_response = 28 ;
78+
79+ // Worker indexing message types
80+ FunctionsMetadataRequest functions_metadata_request = 29 ;
81+ FunctionMetadataResponses function_metadata_responses = 30 ;
7882 }
7983}
8084
@@ -260,6 +264,30 @@ message RpcFunctionMetadata {
260264
261265 // Is set to true for proxy
262266 bool is_proxy = 7 ;
267+
268+ // Function indexing status
269+ StatusResult status = 8 ;
270+
271+ // Function language
272+ string language = 9 ;
273+
274+ // Raw binding info
275+ repeated string raw_bindings = 10 ;
276+ }
277+
278+ // Host tells worker it is ready to receive metadata
279+ message FunctionsMetadataRequest {
280+ // base directory for function app
281+ string function_app_directory = 1 ;
282+ }
283+
284+ // Worker sends function metadata back to host
285+ message FunctionMetadataResponses {
286+ // list of function indexing responses
287+ repeated FunctionLoadRequest function_load_requests_results = 1 ;
288+
289+ // status of overall metadata request
290+ StatusResult result = 2 ;
263291}
264292
265293// Host requests worker to invoke a Function
@@ -453,8 +481,9 @@ message RpcLog {
453481
454482 // Category of the log. Defaults to User if not specified.
455483 enum RpcLogCategory {
456- User = 0 ;
457- System = 1 ;
484+ User = 0 ;
485+ System = 1 ;
486+ CustomMetric = 2 ;
458487 }
459488
460489 // Unique id for invocation (if exists)
@@ -476,11 +505,14 @@ message RpcLog {
476505 // Exception (if exists)
477506 RpcException exception = 6 ;
478507
479- // json serialized property bag, or could use a type scheme like map<string, TypedData>
508+ // json serialized property bag
480509 string properties = 7 ;
481510
482- // Category of the log. Either user(default) or system .
511+ // Category of the log. Either user(default), system, or custom metric .
483512 RpcLogCategory log_category = 8 ;
513+
514+ // strongly-typed (ish) property bag
515+ map <string , TypedData > propertiesMap = 9 ;
484516}
485517
486518// Encapsulates an Exception
0 commit comments