internal CustomizationLogger(string name, Func <string, LogLevel, bool> filter , IExternalScopeProvider scopeProvider, string prix, string logStoreTopic , IKafkaService kafkaService) { if (name == null) { throw new ArgumentNullException(nameof(name)); } _kafkaService = kafkaService; Name = name; Filter = filter ?? ((category, logLevel) => true); ScopeProvider = scopeProvider; _prix = prix; _logStoreTopic = logStoreTopic; Task.Run(() => { try { System.Diagnostics.Debug.WriteLine("kafka开始同步日志。"); foreach (var entityMess in blockColl.GetConsumingEnumerable()) { var task = _kafkaService.Producer(_logStoreTopic , entityMess.Id, entityMess); if (task == null) { throw new NullReferenceException("方法没有返回有效的task"); } //System.Diagnostics.Debug.WriteLine("即将执行kafka日志Producer"); var result = task.Result; //Console.WriteLine(_prix+"--"+ logBuilder.ToString()); } } catch (Exception ep) { System.Diagnostics.Debug.WriteLine("kafka同步出现问题,详细情况:{0}", ep.ToString()); blockColl.CompleteAdding(); } }); }
///添加 private void AddCollMess(EntityMessages message) { if (!blockColl.IsAddingCompleted) { blockColl.Add(message); } else { var task = _kafkaService.Producer(_logStoreTopic , message.Id, message); if (task == null) { throw new NullReferenceException("方法没有返回有效的task"); } //System.Diagnostics.Debug.WriteLine("即将执行kafka日志Producer"); var result = task.Result; //Console.WriteLine(_prix+"--"+ logBuilder.ToString()); } }
public async Task <ActionResult <string> > Get() { await _kafkaService.Producer("my-replicated-topic-morepart", "test", "你好test"); return("执行成功了"); }