Name:
interface
Value:
Amplify has re-imagined the way frontend developers build fullstack applications. Develop and deploy without the hassle.

Page updated Feb 21, 2024

Maintenance ModeYou are viewing Amplify Gen 1 documentation. Amplify Gen 1 has entered maintenance mode and will reach end of life on May 1, 2027. New project should use Amplify Gen 2. For existing Gen 1 projects, a migration guide and tooling are available to help you upgrade. Switch to the latest Gen 2 docs →

Send logs

With the Amplify Logger, you can send logs to Amazon CloudWatch from errors that are caught by the Amplify library or by adding your own custom log messages. You can also customize which levels of log messages to send to CloudWatch.

Log messages

You should follow best security practices when logging messages. This includes validating log messages and ensuring log messages don't contain personally identifiable information and/or sensitive data.

You can log messages using the Amplify logger to a specific namespace to help you group logs that are similar when they are sent to CloudWatch. To accomplish this, get an instance of the Logger and specify a category name and/or namespace. Use the Logger instance to log messages at the desired log level. The category name and namespace values are used to tag your log messages that will appear in CloudWatch. They are also used to identify and fetch the logger again without creating a new Logger instance.

You can also log JSON formatted log messages to leverage AWS CloudWatch query and filter supports.

Logger logger = Amplify.Logging.logger(AmplifyCategory.Auth, "<namespace>")
try {
String result = doSomething();
logger.debug("result: " + result);
} catch(Exception: exception) {
logger.error("operation failed", exception);
}
val logger = Amplify.Logging.logger(AmplifyCategory.Auth, "<namespace>")
try {
val result = doSomething()
logger.debug("result: $result")
} catch (exception: Exception) {
logger.error("operation failed", exception)
}
Logger logger = Amplify.Logging.logger(AmplifyCategory.Auth, "<namespace>")
try {
String result = doSomething();
logger.debug("result: " + result);
} catch(Exception: exception) {
logger.error("operation failed", exception);
}

The following are existing Amplify category names that are used by default by Amplify when automatically logging errors from the library.

  • ANALYTICS
  • API
  • AUTH
  • DATASTORE
  • HUB
  • LOGGING
  • NOTIFICATIONS
  • PREDICTIONS
  • STORAGE
  • GEO