garnet
48 строк · 1.4 Кб
1// Copyright (c) Microsoft Corporation.
2// Licensed under the MIT license.
3
4using System.Collections.Generic;5using System.Diagnostics;6using Garnet.server;7using StackExchange.Redis;8
9namespace MetricsMonitor10{
11public enum Metric : byte12{13LATENCY,14INFO,15}16
17public class Configuration18{19public static ConfigurationOptions GetConfig(string address, int port = default, bool allowAdmin = false, bool useTLS = false, string tlsHost = null)20{21var commands = RespCommandsInfo.TryGetRespCommandNames(out var names)22? new HashSet<string>(names)23: new HashSet<string>();24
25var configOptions = new ConfigurationOptions26{27EndPoints = { { address, port }, },28CommandMap = CommandMap.Create(commands),29ConnectTimeout = 100_000,30SyncTimeout = 100_000,31AllowAdmin = allowAdmin,32Ssl = useTLS,33SslHost = tlsHost,34};35
36if (useTLS)37{38configOptions.CertificateValidation += (sender, cert, chain, errors) =>39{40Debug.WriteLine("Certificate validation errors: " + errors);41return true;42};43}44
45return configOptions;46}47}48}