Add metrics for audio duration

This commit is contained in:
2025-08-13 12:18:51 +03:00
parent 900c7ecb51
commit d957800e18
6 changed files with 109 additions and 6 deletions

View File

@@ -25,6 +25,7 @@ const (
type TranscribeService struct {
jobRepo contract.TranscriptJobRepository
fileRepo contract.FileRepository
metaviewer contract.AudioMetaViewer
converter contract.AudioFileConverter
recognizer contract.AudioRecognizer
}
@@ -32,12 +33,14 @@ type TranscribeService struct {
func NewTranscribeService(
jobRepo contract.TranscriptJobRepository,
fileRepo contract.FileRepository,
metaviewer contract.AudioMetaViewer,
converter contract.AudioFileConverter,
recognizer contract.AudioRecognizer,
) *TranscribeService {
return &TranscribeService{
jobRepo: jobRepo,
fileRepo: fileRepo,
metaviewer: metaviewer,
converter: converter,
recognizer: recognizer,
}
@@ -74,6 +77,12 @@ func (s *TranscribeService) CreateTranscribeJob(file io.Reader, fileName string)
return nil, err
}
info, err := s.metaviewer.GetInfo(storageFilePath)
if err != nil {
return nil, err
}
metrics.InputFileDurationHistogram.WithLabelValues().Observe(float64(info.Seconds))
metrics.InputFileSizeHistogram.WithLabelValues(ext).Observe(float64(size))
// Создаем запись в таблице files