Skip to content

Date Provider

Capture SDK annotates each of the emitted logs with a timestamp.

By default, the Capture Logger queries the current time using system provided APIs - Date() in Kotlin/Swift.

A custom DateProvider instance can be provided at the Logger start time for cases when another time source is desirable (e.g., you have NTP time source in your app that you want to use for logs emitted by Capture too).

Kotlin
class CustomDateProvider : DateProvider {
  override fun invoke(): Date {
    return Date() // Replace with your own time source.
  }
}

Logger.start(
  // ...
  dateProvider = CustomDateProvider(),
)
Java
class CustomDateProvider implements DateProvider {
  @Override
  public Date invoke() {
    return new Date(); //Replace with your own time source.
  }
}

Logger.start(
  // ...
  new CustomDateProvider() //dateProvider
);
Swift
final class CustomDateProvider: DateProvider {
  func getDate() -> Date {
    return Date()
  }
}

Logger.start(
  // ...
  dateProvider: CustomDateProvider(),
)