using System;
using System.Collections.Generic;
using System.Text;

// This file is part of the EonaCat project(s) which is released under the Apache License.
// See the LICENSE file or go to https://EonaCat.com/License for full license details.

namespace EonaCat.Logger.EonaCatCoreLogger
{
    public class ElasticSearchLoggerOptions
    {
        public string Uri { get; set; } = "http://localhost:9200";
        public string IndexName { get; set; } = "eonacat-logs";
        public bool IsEnabled { get; set; } = true;
        public string Username { get; set; }
        public string Password { get; set; }
        public Dictionary<string, string> CustomHeaders { get; set; } = new();
        public Dictionary<string, string> TemplateHeaders { get; set; } = new();
        public int RetryBufferSize { get; set; } = 100;
        public int FlushIntervalSeconds { get; set; } = 5;
        public bool UseBulkInsert { get; set; } = true;
        public bool IncludeCorrelationId { get; set; }
        public int MaxBufferSize { get; set; } = 1000;
    }
}
