question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

docker-jitsi-meet stable-5390-3: recording fails

See original GitHub issue

jitsi/docker-jitsi-meet stable-5390-3: release

Recordings fails with “recording has stopped” message in the web app.

No errors in JS console No entries in browser’s network analysis

My setup is vanilla docker-jitsi-meet single node (nothing changed in yaml-files) only a few in .env

Runs in a private VMware cloud and so with a software loadbalancer in front. TLS termination is done in jitsi with letsencrypt enabled (working). Outside ports are 80, 443, 4443, 10000 (UDP) Inside ports as given 8000, 8443, 4443, 10000 (UDP) The cloud’s loadbalancer has only the ONE node in it’s pool It’s one-armed NAT, so the backend can see the real client source IPs. (but I think that doesn’t matter.)

Jibri is able to write to the recording directory, the folders and metadata.json are created each time I start a recording.

My .env:

CONFIG=~/.jitsi-meet-cfg
HTTP_PORT=8000
HTTPS_PORT=8443
TZ=Europe/Berlin
PUBLIC_URL=https://my.meeting.domain
DOCKER_HOST_ADDRESS=172.18.65.158
ENABLE_LOBBY=1
ENABLE_PREJOIN_PAGE=1
ENABLE_WELCOME_PAGE=1
ENABLE_CLOSE_PAGE=0
ENABLE_LETSENCRYPT=1
LETSENCRYPT_DOMAIN=my.meeting.domain
LETSENCRYPT_EMAIL=teletom@my.meeting.domain
ETHERPAD_URL_BASE=http://etherpad.meet.jitsi:9001
ETHERPAD_TITLE="Meeting Pad"
ETHERPAD_DEFAULT_PAD_TEXT="Welcome to Meeting Pad!\n\n"
ETHERPAD_SKIN_NAME="colibris"
ETHERPAD_SKIN_VARIANTS="super-light-toolbar super-light-editor light-background full-width-editor"
ENABLE_AUTH=1
ENABLE_GUESTS=1
AUTH_TYPE=internal
XMPP_DOMAIN=meet.jitsi
XMPP_SERVER=xmpp.meet.jitsi
XMPP_BOSH_URL_BASE=http://xmpp.meet.jitsi:5280
XMPP_AUTH_DOMAIN=auth.meet.jitsi
XMPP_MUC_DOMAIN=muc.meet.jitsi
XMPP_INTERNAL_MUC_DOMAIN=internal-muc.meet.jitsi
XMPP_GUEST_DOMAIN=guest.meet.jitsi
XMPP_MODULES=
XMPP_MUC_MODULES=
XMPP_INTERNAL_MUC_MODULES=
JVB_BREWERY_MUC=jvbbrewery
JVB_AUTH_USER=jvb
JVB_STUN_SERVERS=meet-jit-si-turnrelay.jitsi.net:443
JVB_PORT=10000
JVB_TCP_HARVESTER_DISABLED=true
JVB_TCP_PORT=4443
JVB_TCP_MAPPED_PORT=4443
JICOFO_AUTH_USER=focus
JIGASI_XMPP_USER=jigasi
JIGASI_BREWERY_MUC=jigasibrewery
JIGASI_PORT_MIN=20000
JIGASI_PORT_MAX=20050
ENABLE_RECORDING=1
XMPP_RECORDER_DOMAIN=recorder.meet.jitsi
JIBRI_RECORDER_USER=recorder
JIBRI_RECORDING_DIR=/config/recordings
JIBRI_XMPP_USER=jibri
JIBRI_BREWERY_MUC=jibribrewery
JIBRI_PENDING_TIMEOUT=90
JIBRI_STRIP_DOMAIN_JID=muc
JIBRI_LOGS_DIR=/config/logs
ENABLE_HTTP_REDIRECT=1
RESTART_POLICY=unless-stopped

log.0.txt

2021-02-11 15:52:16.566 FINE: [371] org.jitsi.xmpp.mucclient.MucClient.log() Received an IQ with type set: IQ Stanza (jibri http://jitsi.org/protocol/jibri) [to=jibri@auth.meet.jitsi/pizIntyO,from=jibribrewery@internal-muc.meet.jitsi/focus,id=amlicmlAYXV0aC5tZWV0LmppdHNpL3BpekludHlPAEozZDU5LTU3NTAApRorTDk6pyORYgJOA0hXWQ==,type=set,]
2021-02-11 15:52:16.567 INFO: [371] org.jitsi.jibri.api.xmpp.XmppApi.handleJibriIq() Received JibriIq <iq to='jibri@auth.meet.jitsi/pizIntyO' from='jibribrewery@internal-muc.meet.jitsi/focus' id='amlicmlAYXV0aC5tZWV0LmppdHNpL3BpekludHlPAEozZDU5LTU3NTAApRorTDk6pyORYgJOA0hXWQ==' type='set'><jibri xmlns='http://jitsi.org/protocol/jibri' action='start' recording_mode='file' room='rectest@muc.meet.jitsi' session_id='dpitstnczznlpqdm' app_data='{"file_recording_metadata":{"share":true}}'/></iq> from environment [MucClient id=xmpp.meet.jitsi hostname=xmpp.meet.jitsi]
2021-02-11 15:52:16.567 INFO: [371] org.jitsi.jibri.api.xmpp.XmppApi.handleStartJibriIq() Received start request, starting service
2021-02-11 15:52:16.576 INFO: [371] org.jitsi.jibri.api.xmpp.XmppApi.handleStartService() Parsed call url info: CallUrlInfo(baseUrl=https://meet.jitsi, callName=rectest, urlParams=[])
2021-02-11 15:52:16.577 INFO: [371] org.jitsi.jibri.JibriManager.startFileRecording() Starting a file recording with params: FileRecordingRequestParams(callParams=CallParams(callUrlInfo=CallUrlInfo(baseUrl=https://meet.jitsi, callName=rectest, urlParams=[])), sessionId=dpitstnczznlpqdm, callLoginParams=XmppCredentials(domain=recorder.meet.jitsi, username=recorder, password=81cffcec3c80fedc161a9bbe26210697))
2021-02-11 15:52:16.578 FINE: [371] org.jitsi.jibri.config.debug() ConfigSourceSupplier: Trying to retrieve key 'jibri.chrome.flags' from source 'config' as type kotlin.collections.List<kotlin.String>
2021-02-11 15:52:16.580 FINE: [371] org.jitsi.jibri.config.debug() ConfigSourceSupplier: Successfully retrieved key 'jibri.chrome.flags' from source 'config' as type kotlin.collections.List<kotlin.String>
2021-02-11 15:52:17.032 INFO: [371] org.openqa.selenium.remote.ProtocolHandshake.createSession() Detected dialect: OSS
2021-02-11 15:52:17.039 FINE: [371] org.jitsi.jibri.capture.ffmpeg.FfmpegCapturer.<init>() Detected os as OS: LINUX
2021-02-11 15:52:17.040 FINE: [371] org.jitsi.jibri.config.debug() FallbackSupplier: checking for value via suppliers:
  LambdaSupplier: 'JibriConfig::recordingDirectory'
  ConfigSourceSupplier: key: 'jibri.recording.recordings-directory', type: 'kotlin.String', source: 'config'
2021-02-11 15:52:17.040 FINE: [371] org.jitsi.jibri.config.debug() LambdaSupplier: Trying to retrieve value via JibriConfig::recordingDirectory
2021-02-11 15:52:17.040 FINE: [371] org.jitsi.jibri.config.debug() LambdaSupplier: 'JibriConfig::recordingDirectory': found value
2021-02-11 15:52:17.041 FINE: [371] org.jitsi.jibri.config.debug() FallbackSupplier: value found via LambdaSupplier: 'JibriConfig::recordingDirectory'
2021-02-11 15:52:17.041 FINE: [371] org.jitsi.jibri.config.debug() FallbackSupplier: checking for value via suppliers:
  LambdaSupplier: 'JibriConfig::finalizeRecordingScriptPath'
  ConfigSourceSupplier: key: 'jibri.recording.finalize-script', type: 'kotlin.String', source: 'config'
2021-02-11 15:52:17.042 FINE: [371] org.jitsi.jibri.config.debug() LambdaSupplier: Trying to retrieve value via JibriConfig::finalizeRecordingScriptPath
2021-02-11 15:52:17.042 FINE: [371] org.jitsi.jibri.config.debug() FallbackSupplier: failed to find value via LambdaSupplier: 'JibriConfig::finalizeRecordingScriptPath': org.jitsi.metaconfig.ConfigException$UnableToRetrieve$Error: class kotlin.KotlinNullPointerException
2021-02-11 15:52:17.043 FINE: [371] org.jitsi.jibri.config.debug() ConfigSourceSupplier: Trying to retrieve key 'jibri.recording.finalize-script' from source 'config' as type kotlin.String
2021-02-11 15:52:17.043 FINE: [371] org.jitsi.jibri.config.debug() ConfigSourceSupplier: Successfully retrieved key 'jibri.recording.finalize-script' from source 'config' as type kotlin.String
2021-02-11 15:52:17.044 FINE: [371] org.jitsi.jibri.config.debug() FallbackSupplier: value found via ConfigSourceSupplier: key: 'jibri.recording.finalize-script', type: 'kotlin.String', source: 'config'
2021-02-11 15:52:17.044 INFO: [371] org.jitsi.jibri.service.impl.FileRecordingJibriService.<init>() Writing recording to /config/recordings/dpitstnczznlpqdm, finalize script path /path/to/finalize
2021-02-11 15:52:17.044 FINE: [371] org.jitsi.jibri.statsd.JibriStatsDClient.incrementCounter() Incrementing statsd counter: start:recording
2021-02-11 15:52:17.044 INFO: [371] org.jitsi.jibri.status.JibriStatusManager.log() Busy status has changed: IDLE -> BUSY
2021-02-11 15:52:17.045 FINE: [371] org.jitsi.jibri.webhooks.v1.WebhookClient.invokeSuspend() Updating 0 subscribers of status
2021-02-11 15:52:17.045 INFO: [371] org.jitsi.jibri.api.xmpp.XmppApi.updatePresence() Jibri reports its status is now JibriStatus(busyStatus=BUSY, health=OverallHealth(healthStatus=HEALTHY, details={})), publishing presence to connections
2021-02-11 15:52:17.045 FINE: [371] org.jitsi.xmpp.mucclient.MucClientManager.log() Setting a presence extension: org.jitsi.xmpp.extensions.jibri.JibriStatusPacketExt@2c15e4cf
2021-02-11 15:52:17.046 FINE: [371] org.jitsi.xmpp.mucclient.MucClientManager.log() Replacing presence extension: org.jitsi.xmpp.extensions.jibri.JibriStatusPacketExt@3ce1f4d
2021-02-11 15:52:17.046 INFO: [371] org.jitsi.jibri.api.xmpp.XmppApi.handleStartJibriIq() Sending 'pending' response to start IQ
2021-02-11 15:52:17.049 FINE: [38] org.jitsi.xmpp.extensions.DefaultPacketExtensionProvider.parse() Could not add a provider for element busy-status from namespace http://jitsi.org/protocol/jibri
2021-02-11 15:52:17.051 FINE: [38] org.jitsi.xmpp.extensions.DefaultPacketExtensionProvider.parse() Could not add a provider for element health-status from namespace http://jitsi.org/protocol/health
2021-02-11 15:52:18.085 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.visit() Visiting url https://meet.jitsi/rectest#config.iAmRecorder=true&config.externalConnectUrl=null&config.startWithAudioMuted=true&config.startWithVideoMuted=true&interfaceConfig.APP_NAME="Jibri"&config.analytics.disabled=true&config.p2p.enabled=false&config.prejoinPageEnabled=false&config.requireDisplayName=false
2021-02-11 15:52:18.664 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:19.172 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:19.678 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:20.184 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:20.690 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:21.196 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:21.702 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:22.207 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:22.713 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:23.219 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:23.724 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:24.231 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:24.737 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:25.242 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:25.577 FINE: [17] org.jitsi.jibri.webhooks.v1.WebhookClient.invokeSuspend() Updating 0 subscribers of status
2021-02-11 15:52:25.748 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:26.254 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:26.760 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:27.266 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:27.772 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:28.280 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:28.786 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:29.291 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:29.797 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:30.303 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:30.809 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:31.314 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:31.820 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:32.326 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:32.834 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:33.341 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:33.847 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:34.354 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:34.867 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:35.373 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:35.879 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:36.385 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:36.895 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:37.402 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:37.908 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:38.414 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:38.919 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:39.425 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:39.931 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:40.438 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:40.943 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:41.449 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:41.955 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:42.460 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:42.966 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:43.472 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:43.978 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:44.483 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:44.989 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:45.494 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:45.999 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:46.505 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:47.010 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:47.516 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:48.022 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:48.527 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:49.033 FINE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.apply() Not joined yet: Cannot read property 'isJoined' of undefined
2021-02-11 15:52:49.033 SEVERE: [381] org.jitsi.jibri.selenium.pageobjects.CallPage.visit() Timed out waiting for call page to load
2021-02-11 15:52:49.033 INFO: [381] org.jitsi.jibri.selenium.JibriSelenium.onSeleniumStateChange() Transitioning from state Starting up to Error: FailedToJoinCall SESSION Failed to join the call
2021-02-11 15:52:49.034 INFO: [381] org.jitsi.jibri.service.impl.FileRecordingJibriService.onServiceStateChange() File recording service transitioning from state Starting up to Error: FailedToJoinCall SESSION Failed to join the call
2021-02-11 15:52:49.034 INFO: [381] org.jitsi.jibri.api.xmpp.XmppApi.invoke() Current service had an error Error: FailedToJoinCall SESSION Failed to join the call, sending error iq <iq to='jibribrewery@internal-muc.meet.jitsi/focus' id='u8uln-646' type='set'><jibri xmlns='http://jitsi.org/protocol/jibri' status='off' failure_reason='error' should_retry='true'/></iq>
2021-02-11 15:52:49.035 FINE: [381] org.jitsi.jibri.statsd.JibriStatsDClient.incrementCounter() Incrementing statsd counter: stop:recording
2021-02-11 15:52:49.036 INFO: [381] org.jitsi.jibri.JibriManager.stopService() Stopping the current service
2021-02-11 15:52:49.036 INFO: [381] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Stopping capturer
2021-02-11 15:52:49.036 INFO: [381] org.jitsi.jibri.util.JibriSubprocess.ffmpeg.stop() Stopping ffmpeg process
2021-02-11 15:52:49.037 INFO: [381] org.jitsi.jibri.util.JibriSubprocess.ffmpeg.stop() ffmpeg exited with value null
2021-02-11 15:52:49.037 INFO: [381] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Quitting selenium
2021-02-11 15:52:49.046 INFO: [381] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Participants in this recording: []
2021-02-11 15:52:49.052 INFO: [381] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Leaving call and quitting browser
2021-02-11 15:52:49.052 INFO: [381] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Recurring call status checks cancelled
2021-02-11 15:52:49.057 INFO: [381] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Got 8 log entries for type browser
2021-02-11 15:52:49.079 INFO: [381] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Got 1070 log entries for type driver
2021-02-11 15:52:49.170 INFO: [381] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Got 0 log entries for type client
2021-02-11 15:52:49.170 INFO: [381] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Leaving web call
2021-02-11 15:52:49.183 INFO: [381] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Quitting chrome driver
2021-02-11 15:52:49.254 INFO: [381] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Chrome driver quit
2021-02-11 15:52:49.254 INFO: [381] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Finalizing the recording
2021-02-11 15:52:49.256 SEVERE: [381] org.jitsi.jibri.service.impl.FileRecordingJibriService.finalize() Failed to run finalize script: java.io.IOException: Cannot run program "/path/to/finalize": error=2, No such file or directory with stack:
java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
org.jitsi.jibri.util.ProcessWrapper.start(ProcessWrapper.kt:87)
org.jitsi.jibri.service.impl.FileRecordingJibriService.finalize(FileRecordingJibriService.kt:212)
org.jitsi.jibri.service.impl.FileRecordingJibriService.stop(FileRecordingJibriService.kt:197)
org.jitsi.jibri.JibriManager.stopService(JibriManager.kt:262)
org.jitsi.jibri.JibriManager$startService$1.invoke(JibriManager.kt:210)
org.jitsi.jibri.JibriManager$startService$1.invoke(JibriManager.kt:86)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:37)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:29)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:53)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:29)
kotlin.collections.CollectionsKt__MutableCollectionsKt.filterInPlace$CollectionsKt__MutableCollectionsKt(MutableCollections.kt:293)
kotlin.collections.CollectionsKt__MutableCollectionsKt.retainAll(MutableCollections.kt:284)
org.jitsi.jibri.util.StatusPublisher.publishStatus(StatusPublisher.kt:53)
org.jitsi.jibri.service.impl.StatefulJibriService.onServiceStateChange(StatefulJibriService.kt:40)
org.jitsi.jibri.service.impl.StatefulJibriService.access$onServiceStateChange(StatefulJibriService.kt:26)
org.jitsi.jibri.service.impl.StatefulJibriService$1.invoke(StatefulJibriService.kt:35)
org.jitsi.jibri.service.impl.StatefulJibriService$1.invoke(StatefulJibriService.kt:26)
org.jitsi.jibri.util.NotifyingStateMachine.notify(NotifyingStateMachine.kt:26)
org.jitsi.jibri.service.JibriServiceStateMachine.access$notify(JibriServiceStateMachine.kt:46)
org.jitsi.jibri.service.JibriServiceStateMachine$stateMachine$1$5.invoke(JibriServiceStateMachine.kt:100)
org.jitsi.jibri.service.JibriServiceStateMachine$stateMachine$1$5.invoke(JibriServiceStateMachine.kt:46)
com.tinder.StateMachine.notifyOnTransition(StateMachine.kt:65)
com.tinder.StateMachine.transition(StateMachine.kt:23)
org.jitsi.jibri.service.JibriServiceStateMachine.transition(JibriServiceStateMachine.kt:112)
org.jitsi.jibri.service.impl.StatefulJibriService$registerSubComponent$1.invoke(StatefulJibriService.kt:46)
org.jitsi.jibri.service.impl.StatefulJibriService$registerSubComponent$1.invoke(StatefulJibriService.kt:26)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:37)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:29)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:53)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:29)
kotlin.collections.CollectionsKt__MutableCollectionsKt.filterInPlace$CollectionsKt__MutableCollectionsKt(MutableCollections.kt:293)
kotlin.collections.CollectionsKt__MutableCollectionsKt.retainAll(MutableCollections.kt:284)
org.jitsi.jibri.util.StatusPublisher.publishStatus(StatusPublisher.kt:53)
org.jitsi.jibri.selenium.JibriSelenium.onSeleniumStateChange(JibriSelenium.kt:167)
org.jitsi.jibri.selenium.JibriSelenium.access$onSeleniumStateChange(JibriSelenium.kt:118)
org.jitsi.jibri.selenium.JibriSelenium$1.invoke(JibriSelenium.kt:152)
org.jitsi.jibri.selenium.JibriSelenium$1.invoke(JibriSelenium.kt:118)
org.jitsi.jibri.util.NotifyingStateMachine.notify(NotifyingStateMachine.kt:26)
org.jitsi.jibri.selenium.SeleniumStateMachine.access$notify(SeleniumStateMachine.kt:33)
org.jitsi.jibri.selenium.SeleniumStateMachine$stateMachine$1$5.invoke(SeleniumStateMachine.kt:78)
org.jitsi.jibri.selenium.SeleniumStateMachine$stateMachine$1$5.invoke(SeleniumStateMachine.kt:33)
com.tinder.StateMachine.notifyOnTransition(StateMachine.kt:65)
com.tinder.StateMachine.transition(StateMachine.kt:23)
org.jitsi.jibri.selenium.SeleniumStateMachine.transition(SeleniumStateMachine.kt:83)
org.jitsi.jibri.selenium.JibriSelenium$joinCall$1.run(JibriSelenium.kt:251)
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
java.util.concurrent.FutureTask.run(FutureTask.java:266)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
java.lang.Thread.run(Thread.java:748)

2021-02-11 15:52:49.257 INFO: [381] org.jitsi.jibri.status.JibriStatusManager.log() Busy status has changed: BUSY -> IDLE
2021-02-11 15:52:49.257 FINE: [381] org.jitsi.jibri.webhooks.v1.WebhookClient.invokeSuspend() Updating 0 subscribers of status
2021-02-11 15:52:49.257 INFO: [381] org.jitsi.jibri.api.xmpp.XmppApi.updatePresence() Jibri reports its status is now JibriStatus(busyStatus=IDLE, health=OverallHealth(healthStatus=HEALTHY, details={})), publishing presence to connections
2021-02-11 15:52:49.258 FINE: [381] org.jitsi.xmpp.mucclient.MucClientManager.log() Setting a presence extension: org.jitsi.xmpp.extensions.jibri.JibriStatusPacketExt@7e3b994c
2021-02-11 15:52:49.258 FINE: [381] org.jitsi.xmpp.mucclient.MucClientManager.log() Replacing presence extension: org.jitsi.xmpp.extensions.jibri.JibriStatusPacketExt@2c15e4cf
2021-02-11 15:52:49.261 FINE: [38] org.jitsi.xmpp.extensions.DefaultPacketExtensionProvider.parse() Could not add a provider for element busy-status from namespace http://jitsi.org/protocol/jibri
2021-02-11 15:52:49.261 FINE: [38] org.jitsi.xmpp.extensions.DefaultPacketExtensionProvider.parse() Could not add a provider for element health-status from namespace http://jitsi.org/protocol/health

No errors in browser.0.txt.

I need some advice here…

-Thomas

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Reactions:2
  • Comments:20 (9 by maintainers)

github_iconTop GitHub Comments

1reaction
sgumirovcommented, Mar 19, 2021

I’m not yet sure, and correct me if I’m wrong, but from my point of view a Jibri expectation of https service being available at web container could be the reason for a bunch of issues including Failed to read the 'localStorage' property from 'Window': Access is denied for this document.. And also it correlates to the behaviour described above when setting DISABLE_HTTPS=0 fixes the recording.

1reaction
sgumirovcommented, Mar 19, 2021

From what I see the Jibri tries to connect to https of a docker internal web jitsi service, see baseUrl=https://meet.jitsi:

jibri_1    | 2021-03-18 19:28:31.627 INFO: [42] org.jitsi.jibri.JibriManager.startFileRecording() Starting a file recording with params: FileRecordingRequestParams(call
Params=CallParams(callUrlInfo=CallUrlInfo(baseUrl=https://meet.jitsi, callName=test, urlParams=[])), sessionId=wbwcgvzrvnmoskrb, callLoginParams=XmppCredentials(domain=
recorder.meet.jitsi, username=recorder, password=873806fef4d326e7772447f7e2a5ddf0))

Apparently https is hardcoded in XmppUtils.kt :: getCallUrlInfoFromJid() at line 43. Should it be dependent on DISABLE_HTTPS env variable? any thoughts on this?

Edit: formatting

Read more comments on GitHub >

github_iconTop Results From Across the Web

Jitsi Docker recording failing - Jitsi Community Forum
Jitsi docker is running with Jibri but the recording option keeps failing. (Session info: chrome=90.0.4430.212)
Read more >
Fixing jitsi recording unavailable on docker - Sesame Disk
If recording is unavailable on Jitsi, check Github for Jitsi recording fails. To observe what happens to the Jibri container, ...
Read more >
Setup Jitsi in Docker with NGINX Proxy Manager - YouTube
In this video we're going to take a look at installing Jisti in Docker. This will be a very basic install, but we'll...
Read more >
Image Layer Details - jitsi/jicofo:stable-4548-1 | Docker Hub
jitsi /jicofo:stable-4548-1. Digest:sha256:570a1924959448c2f8e5456407951c6db5b8ba3c0cbd5d61023b92ffcfe0c6bc. OS/ARCH. linux/amd64. Compressed Size. 135.4 MB.
Read more >
guest error when entering the room on jitsi - Stack Overflow
I installed jitsi application with docker on my own server, ... error I mentioned below. my jitsi version: docker-jitsi-meet-stable-7648-4.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found