Пример #1
0
 private void ProducerLoggingProcessor()
 {
     while (producerLogsQueue.Count > 0)
     {
         var producerLog = producerLogsQueue.Dequeue();
         ProducerWriter.WriteInProducerLogFile(producerLog.Tenant, producerLog.Product, producerLog.Component, producerLog.Topic, producerLog.ProducerName, producerLog.Log);
     }
     IsProducerLoggingWorking = false;
 }
Пример #2
0
 public bool TryCreateProducerDirectory(string tenant, string product, string component, string topic, Producer producer)
 {
     try
     {
         if (Directory.Exists(ProducerLocations.GetProducerDirectory(tenant, product, component, topic, producer.Name)) != true)
         {
             Directory.CreateDirectory(ProducerLocations.GetProducerDirectory(tenant, product, component, topic, producer.Name));
             Directory.CreateDirectory(ProducerLocations.GetProducerLogsDirectory(tenant, product, component, topic, producer.Name));
             producerLogsQueue.Enqueue(new ProducerLog()
             {
                 Tenant       = tenant,
                 Product      = product,
                 Component    = component,
                 Topic        = topic,
                 ProducerName = producer.Name,
                 Log          = $"{DateTime.Now:HH:mm:ss}|PRODUCER#|{producer.Name}|{producer.Id}|CREATED"
             });
             ProducerWriter.WriteProducerConfigFile(tenant, product, component, topic, producer);
             logger.LogInformation($"Producer '{producer.Name}' at {tenant}/{product}/{component}/{topic} is created");
         }