token-migrator container by phase, and explains what each log tells you and what to check when a log reports a problem.
This page is based on logs from Token Migrator version 1.4. When searching the logs, search by message text rather than by class line number (for example instead of ArgsUtils:113 search for No batch size provided), because line numbers are more likely to change between versions.
The logs are grouped into the following phases: initialization, determining in-scope clients, token migration iteration, and shutdown.
Initialization
Parsing arguments
These logs show the value of each argument and option in effect. If a provided value is missing or invalid, aWARN line shows the default value used instead.
Client credentials client resolution (audit log client)
The Token Migrator uses client credentials to verify that it can access the destination Authlete 3.0 environment. This check acts as a control: token migration is performed only while these credentials are valid. During initialization, the Token Migrator calls the Process Token Request API of the destination Authlete 3.0 server with the client credentials grant. If it obtains an access token, initialization continues; otherwise the Token Migrator stops. The resolved client from the configured credentials is also used on behalf of the Token Migrator to create audit log events. All token change events performed by the Token Migrator are linked to this client. When an access token is obtained, logs like the following are written during startup:-
token_request_url(set automatically via the Helm Chart) -
service_token(set by thetokenmigrator.serviceTokencredential in theauthlete-credentials-secret.ymlsecrets):
tokenmigrator.serviceApiKey in the authlete-credentials-secret.yml secrets does not exist in the destination database:
migration-service@system.authlete.com and cannot be changed in the Helm Chart):
accessToken property:
Dry run indication
When the Token Migrator runs in dry run mode (tokenmigrator.mode: dryrun in values.yaml), no tokens are written, and the following log is written during initialization to confirm that dry run is enabled:
Moving timestamp confirmation
When the Token Migrator restarts and continues from where it left off, it logs a non-zero moving timestamp. This value is the last recovery point that the Token Migrator saved, and it looks for token changes after this point. See Stopping and Resuming the Token Migrator for details.Determining in-scope clients
After initialization succeeds, the Token Migrator moves on to the migration phase, starting with resolving the clients that are in scope for migration. The Token Migrator logs each new client that it detects and adds to the scope. Tokens of in-scope clients are checked and migrated when they are created or updated. The Token Migrator also logs when clients are removed from the scope. Each client is identified as<service ID>:<client ID>, for example 170886802516:143761865171655.
Initial client and service state
After initialization, the current service and client state is logged once at the start of the migration phase:Clients added to scope
When clients are added to the migration scope, the following log is written. It contains the identifier of every client whose tokens will be considered for migration:This message lists every in-scope client and can be very long. It is the complete record of the clients the Token Migrator handles.