ニジカ投稿局 https://tv.nizika.tv
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

42 lines
873 B

  1. import { SimpleLogger } from '@peertube/peertube-models'
  2. import { buildSUUID, SUUID } from '@peertube/peertube-node-utils'
  3. export class TranscriptionRun {
  4. uuid: SUUID
  5. logger: SimpleLogger
  6. constructor (logger: SimpleLogger, uuid: SUUID = buildSUUID()) {
  7. this.uuid = uuid
  8. this.logger = logger
  9. }
  10. get runId () {
  11. return this.uuid
  12. }
  13. start () {
  14. performance.mark(this.getStartPerformanceMarkName())
  15. }
  16. stop () {
  17. try {
  18. performance.mark(this.getEndPerformanceMarkName())
  19. performance.measure(
  20. this.runId,
  21. this.getStartPerformanceMarkName(),
  22. this.getEndPerformanceMarkName()
  23. )
  24. } catch (err) {
  25. this.logger.error(err.message, { err })
  26. }
  27. }
  28. getStartPerformanceMarkName () {
  29. return `${this.runId}-started`
  30. }
  31. getEndPerformanceMarkName () {
  32. return `${this.runId}-ended`
  33. }
  34. }