syntax = "proto3"; package kratos.api; option go_package = "github.com/go-kratos/kratos-layout/internal/conf;conf"; import "google/protobuf/duration.proto"; message Startup { string namespace = 1; string group = 2; string name = 3; string configSource = 4; string registryType = 5; string version = 6; string flagConf = 7; } message Bootstrap { Server server = 1; Data data = 2; TraceConf traceConf = 4; } message TraceConf { string endpoint = 1; string env = 2; } message Server { HTTP http = 1; GRPC grpc = 2; Registrar registrar = 3; } message HTTP { string network = 1; string addr = 2; google.protobuf.Duration timeout = 3; } message GRPC { string network = 1; string addr = 2; google.protobuf.Duration timeout = 3; } message Registrar { string namespace = 1; string group = 2; string endpoint = 3; string data = 4; } message Data { Database database = 1; Redis redis = 2; Mongo mongo = 3; } message Database { string driver = 1; string source = 2; int32 maxIdleConns = 3; int32 maxOpenConns = 4; } message Redis { string network = 1; string addr = 2; int32 db = 3; google.protobuf.Duration dial_timeout = 4; google.protobuf.Duration read_timeout = 5; google.protobuf.Duration write_timeout = 6; int32 poolSize = 7; int32 minIdleConns = 8; } message Mongo { string uri = 1; string database = 2; }