public async Task <IActionResult> PublishCounterAsync(AreaCounter counter)
        {
            this.Logger.LogWarning($"Publish Counter: {counter.Area} => {counter.Count}");
            try
            {
                await Cache.SetStringAsync($"{counter.Area}.Counter", counter.Count.ToString());

                return(this.Ok());
            }
            catch (Exception ex)
            {
                return(this.BadRequest(ex));
            }
        }
        public async Task <bool> PublishCounterAsync(AreaCounter areaCounter)
        {
            this.Logger.LogInformation($"{nameof(PublishCounterAsync)}: {areaCounter.Area}=>{areaCounter.Count}");
            try
            {
                var response = await HttpClient.PostAsJsonAsync(PublishCountUrl, areaCounter);

                return(response.IsSuccessStatusCode);
            }
            catch (Exception ex)
            {
                this.Logger.LogWarning(ex, $"{nameof(PublishCounterAsync)}: Failed to get area counter.");
                return(false);
            }
        }