Service logs

ASR prints logs both as and console output (available via docker logs command) and to text files. The size of the produced files depends on the set logging level (available levels: fatal, error, warning, info, debug, trace) and the number of supported sessions. Session data from each day is logged in separate files. The file is changed also after exceeding the size of 10MB.

Log files are created in the default ‘data/logs’ directory and contain in the name the prefix ‘asr-service’ and the date and time of creation. The name of the current log file is changed with the change of date or after the file size exceeds 10MB.
Sample name for the log file from service launched on 25/06/2024 at 11:34:26: asr-service_20240625-113426_000.log

Logged information has the following format:
[date and time] [level] [session id] Message

Sample fragment of logged data:

2024-06-25 11:34:26.199387 [info   ] New request will be handled.
2024-06-25 11:34:26.199546 [info   ] New request peer is ipv4:127.0.0.1:56538.
2024-06-25 11:34:26.199684 [info   ] New request peer is ipv4:127.0.0.1:56538, session ID is '20240625-113426-000'.
2024-06-25 11:34:26.199735 [info   ] Channel has been acquired. Current count of acquired channels is 1 out of unrestricted.
2024-06-25 11:34:26.199776 [info   ] [dev] Session started, active sessions: 1.
2024-06-25 11:34:26.199828 [info   ] t+Evmp+k6x8UxConwN7eFyE+MOy/IHig37nIX+WJZYs=
2024-06-25 11:34:26.199893 [info   ] [20240625-113426-000] Request signature is 'techmo.asr.api.v1p1.Asr/StreamingRecognize/20240625-113426-000'.
2024-06-25 11:34:26.200079 [debug  ] [20240625-113426-000] Request config expects continuous recognition.
2024-06-25 11:34:26.200125 [debug  ] [20240625-113426-000] Request config expects recognition of speech.
2024-06-25 11:34:26.200163 [debug  ] [20240625-113426-000] Request config expects speech recognition using any language group with any model to return up to 1 recognition alternative.
2024-06-25 11:34:26.200234 [debug  ] [20240625-113426-000] Request config speech recognition custom arguments are '--no-input-timeout=5000 --recognition-timeout=10000 --speech-complete-timeout=2000 --speech-incomplete-timeout=4000 '.
2024-06-25 11:34:26.202368 [debug  ] [20240625-113426-000] Request config expects audio in LINEAR16 format with sampling rate of 22050.000000 Hz.
2024-06-25 11:34:26.202429 [debug  ] [20240625-113426-000] Request config disables manual input timers.
2024-06-25 11:34:26.202489 [info   ] [20240625-113426-000] DecoderBuilder: Using general model.
2024-06-25 11:34:26.204818 [debug  ] [20240625-113426-000] Decoder: Received total 0 ms of audio in 0 requests.
2024-06-25 11:34:26.204895 [debug  ] [20240625-113426-000] Decoder: Received total 0 ms of audio in 0 requests.
2024-06-25 11:34:26.204956 [debug  ] [20240625-113426-000] Decoder: Starting input timers.
2024-06-25 11:34:26.222688 [debug  ] [20240625-113426-000] Decoder: Received total 2670 ms of audio in 1 requests.
2024-06-25 11:34:26.365617 [debug  ] [20240625-113426-000] Request will be finalized.
2024-06-25 11:34:26.427592 [debug  ] [20240625-113426-000] Response with final result will be generated.
2024-06-25 11:34:26.429964 [debug  ] [20240625-113426-000] Decoder::GetLattice - produced full lattice for the utterance.
2024-06-25 11:34:26.430374 [debug  ] [20240625-113426-000] Decoder::GetRecognitionFromLattice - found the best path in the lattice.
2024-06-25 11:34:26.430393 [debug  ] [20240625-113426-000] Decoder::GetRecognitionFromLattice - extracting recognition for 1-best hypothesis.
2024-06-25 11:34:26.430832 [debug  ] [20240625-113426-000] Alignment: [0ms - 60ms] <eps> [60ms - 330ms] dzień [330ms - 780ms] dobry [780ms - 810ms] <eps> [810ms - 1350ms] chciałbym [1350ms - 1830ms] zgłosić [1830ms - 2610ms] usterkę [2610ms - 2670ms] <eps>
2024-06-25 11:34:26.430873 [debug  ] [20240625-113426-000] Speech recognition result is being postprocessed using numerals grammar with 200 ms for minimal eps duration...
2024-06-25 11:34:26.431390 [debug  ] [20240625-113426-000] [TextPostprocessor] Skipping <eps> with too short duration in TextPostprocessor::Process(SrgsAlignment const &): 60 ms < 200 ms.
2024-06-25 11:34:26.431408 [debug  ] [20240625-113426-000] [TextPostprocessor] Skipping <eps> with too short duration in TextPostprocessor::Process(SrgsAlignment const &): 30 ms < 200 ms.
2024-06-25 11:34:26.431430 [debug  ] [20240625-113426-000] [TextPostprocessor] Skipping <eps> with too short duration in TextPostprocessor::Process(SrgsAlignment const &): 60 ms < 200 ms.
2024-06-25 11:34:26.431583 [debug  ] [20240625-113426-000] Speech recognition result is being postprocessed using abbreviations grammar with 200 ms for minimal eps duration...
2024-06-25 11:34:26.432685 [info   ] [20240625-113426-000] Speech recognition result alternative is:
Transcription: <eps> dzień dobry <eps> chciałbym zgłosić usterkę <eps>   [ dzień dobry chciałbym zgłosić usterkę ]
Alignment: [60ms - 330ms] dzień [330ms - 780ms] dobry [810ms - 1350ms] chciałbym [1350ms - 1830ms] zgłosić [1830ms - 2610ms] usterkę
Confidence: 1.000000
2024-06-25 11:34:26.433296 [debug  ] [20240625-113426-000] Decoder: Received total 2670 ms of audio in 1 requests.
2024-06-25 11:34:26.433314 [debug  ] [20240625-113426-000] Decoder: Starting input timers.
2024-06-25 11:34:26.433346 [debug  ] [20240625-113426-000] Request stored response count is 1.
2024-06-25 11:34:26.433481 [debug  ] [20240625-113426-000] Writing request configuration to file.
2024-06-25 11:34:26.433869 [debug  ] [20240625-113426-000] Writing request audio data to file.
2024-06-25 11:34:26.435315 [debug  ] [20240625-113426-000] Request processed audio duration is 2670 ms.
2024-06-25 11:34:26.435334 [debug  ] [20240625-113426-000] Request message summary is: 2 read, 1 written.
2024-06-25 11:34:26.435430 [debug  ] [20240625-113426-000] Decoder: Received total 2670 ms of audio in 1 requests.
2024-06-25 11:34:26.435473 [info   ] Channel has been released. Current count of acquired channels is 0 out of unrestricted.
2024-06-25 11:34:26.435506 [info   ] [dev] Session ended, finished sessions: 1, used resource: 3.
2024-06-25 11:34:26.435525 [info   ] ld9QyruzHv30AWk1yjTfQ6/Rgm2zWOEj1DuBGwqbv8s=
2024-06-25 11:34:26.435594 [debug  ] Sessions resources will be pruned in 30 s.
2024-06-25 11:34:26.436000 [info   ] Request from ipv4:127.0.0.1:56538 will be responded to with gRPC status code OK (0).

gRPC health-check

Service implements the HealthCheck interface recommended by the gRPC protocol guidelines, specified by the following proto definition:

syntax = "proto3";
package grpc.health.v1;
option csharp_namespace = "Grpc.Health.V1";
message HealthCheckRequest {
    string service = 1;
}
message HealthCheckResponse {
    enum ServingStatus {
        UNKNOWN = 0;
        SERVING = 1;
        NOT_SERVING = 2;
    }
    ServingStatus status = 1;
}
service Health {
    rpc Check(HealthCheckRequest) returns (HealthCheckResponse);
}

The healthcheck service is available at the same address and port as the main ASR service (given in the start option –address).