示例#1
0
        public HttpResponseMessage PostClicInfo([FromBody] StickyClicInfo data)
        {
            bool result = false;

            try
            {
                // Encolamos si tiene distinto de null la info
                data.Ip = HttpContext.Current != null ? HttpContext.Current.Request.UserHostAddress : "";
                string QueueName  = ConfigurationManager.AppSettings["StickyClicInfoQueue"];
                string dataString = JsonConvert.SerializeObject(data);
                QueueManager.InsertMessage(dataString, QueueName);
                result = true;
            }
            catch (Exception e)
            {
                var messageException = telemetria.MakeMessageException(e, System.Reflection.MethodBase.GetCurrentMethod().Name);
                telemetria.Critical(messageException);
            }


            if (result)
            {
                return(Request.CreateResponse(HttpStatusCode.OK, result));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, result));
            }
        }
示例#2
0
        // This function will get triggered/executed when a new message is written
        // on an Azure Queue called queue.
        public static void ProcessQueueMessage([QueueTrigger("%StickyClicInfoQueue%")] string message, TextWriter log)
        {
            KindAdsTelemetryManager manager = new KindAdsTelemetryManager();
            string DatabaseName             = ConfigurationManager.AppSettings["CosmosDatabaseName"];
            string CollectionName           = ConfigurationManager.AppSettings["CosmosStickyClicCollectionName"];

            StickyClicInfo info = manager.GetInfo <StickyClicInfo>(message);

            manager.SendToCosmos(info, DatabaseName, CollectionName);
        }