public void RecordPackageDownloadStatistics(int packageKey, string userHostAddress, string userAgent) { var stats = new PackageStatistics { // IMPORTANT: We may be able to get timestamp from message IPAddress = userHostAddress, UserAgent = userAgent, PackageKey = packageKey }; var message = stats.ToXml(); var request = new SendMessageRequest(); request.WithQueueUrl(clientContext.QueueUrl); request.WithDelaySeconds(0); request.WithMessageBody(message); using (AmazonSQS client = clientContext.CreateInstance()) { SendMessageResponse response = WrapRequestInErrorHandler(() => client.SendMessage(request)); } }