def logResults()

in src/main/scala/com/gu/flexible/snapshotter/SnapshottingLambda.scala [67:83]


  def logResults(results: Attempt[Seq[(Attempt[PutObjectResult],Attempt[PutObjectResult])]])
    (implicit cloudWatchClient:AmazonCloudWatch, config: CommonConfig): Future[Unit] = {
    results.fold(
      { failed =>
        CloudWatchLogic.putMetricData(
          MetricName.contentSnapshotError -> MetricValue(failed.errors.size, MetricValue.Count)
        )
        Future.successful(failed.errors.foreach(_.logTo(log)))
      },
      { succeeded =>
        val data = succeeded.map(_._1)
        val summaries = succeeded.map(_._2)
        logResultsAttempts(data, Some(contentSnapshotSuccess), Some(contentSnapshotError))
        logResultsAttempts(summaries)
      }
    ).flatMap(identity)
  }