-
J joseph moved this topic from Support
-
J joseph marked this topic as a regular topic
-
Are you refering to https://guacamole.apache.org/doc/gug/configuring-guacamole.html#graphical-recording ? Is that documentation saying we have to record using a CLI tool?
@joseph said in screen recording configuration in Apache Guacamole:
Are you refering to https://guacamole.apache.org/doc/gug/configuring-guacamole.html#graphical-recording ? Is that documentation saying we have to record using a CLI tool?
I am referring to this and I like to record both rdp and ssh sessions then view in the playback in browser: https://guacamole.apache.org/doc/gug/recording-playback.html
-
Hello @harryz
Thanks for the clarification.After downloading the latest plugin
guacamole-history-recording-storage-1.6.0.tar.gzfrom https://guacamole.apache.org/releases/1.6.0/ and putting the.jarinto/app/data/extensionscreate the folder
/app/data/recordingsand set the correct permissions.mkdir -p /app/data/recordings chown -R cloudron:tomcat /app/data/recordings chmod 2750 /app/data/recordings/add needed configuration to
/app/data/guacamole.properties:recording-search-path: /app/data/recordingsRestart the app.
When I now edit a connection I can see the recording settings for this connection:
Here we set:
Recording path:to${HISTORY_PATH}/${HISTORY_UUID}Recording name:to${GUAC_DATE}-${GUAC_TIME}Automatically create recording path:checked
Save.
Now when I start the connection, the follow log is visible:
guacd[599]: INFO: Creating new client for protocol "ssh" guacd[599]: INFO: Connection ID is "$9db0c19b-5bb8-4320-b62c-397a79e8b9a0" guacd[636]: DEBUG: Processing instruction: size guacd[636]: DEBUG: Processing instruction: audio guacd[636]: DEBUG: Processing instruction: video guacd[636]: DEBUG: Processing instruction: image guacd[636]: DEBUG: Processing instruction: timezone guacd[636]: DEBUG: Processing instruction: name guacd[636]: DEBUG: Parameter "scrollback" omitted. Using default value of 1000. guacd[636]: DEBUG: Parameter "font-name" omitted. Using default value of "monospace". guacd[636]: DEBUG: Parameter "font-size" omitted. Using default value of 12. guacd[636]: DEBUG: Parameter "color-scheme" omitted. Using default value of "". guacd[636]: DEBUG: Parameter "enable-sftp" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "sftp-root-directory" omitted. Using default value of "/". guacd[636]: DEBUG: Parameter "sftp-disable-download" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "sftp-disable-upload" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "port" omitted. Using default value of "22". guacd[636]: DEBUG: Parameter "timeout" omitted. Using default value of 10. guacd[636]: DEBUG: Parameter "read-only" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "typescript-name" omitted. Using default value of "typescript". guacd[636]: DEBUG: Parameter "create-typescript-path" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "typescript-write-existing" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "recording-exclude-output" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "recording-exclude-mouse" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "recording-include-keys" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "recording-write-existing" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "server-alive-interval" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "backspace" omitted. Using default value of 127. guacd[636]: DEBUG: Parameter "terminal-type" omitted. Using default value of "linux". guacd[636]: DEBUG: Parameter "timezone" omitted. Using default value of "Europe/Berlin". guacd[636]: DEBUG: Parameter "disable-copy" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "disable-paste" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "wol-send-packet" omitted. Using default value of 0. guacd[636]: INFO: User "@49d1df2d-669f-4b83-99e9-6e50483e8cde" joined connection "$9db0c19b-5bb8-4320-b62c-397a79e8b9a0" (1 users now present) guacd[636]: DEBUG: Client is using protocol version "VERSION_1_5_0" guacd[636]: INFO: Recording of session will be saved to "/app/data/recordings/75b6dda2-00c9-330a-869c-f8eaac87d77a/20251020-132330". 13:23:30.647 [http-nio-8080-exec-10] INFO o.a.g.tunnel.TunnelRequestService - User "guacadmin" connected to connection "1". guacd[636]: DEBUG: Attempting private key import (WITHOUT passphrase) guacd[636]: INFO: Auth key successfully imported. guacd[636]: WARNING: No known host keys provided, host identity will not be verified. guacd[636]: DEBUG: Supported authentication methods: publickey,password guacd[636]: WARNING: Unable to set the timezone: SSH server refused to set "TZ" variable. guacd[636]: INFO: SSH connection successful.And I can see the recorded file in:
ls -lah /app/data/recordings/75b6dda2-00c9-330a-869c-f8eaac87d77a/20251020-132330and viewable in the history overview:

-
Hello @harryz
Thanks for the clarification.After downloading the latest plugin
guacamole-history-recording-storage-1.6.0.tar.gzfrom https://guacamole.apache.org/releases/1.6.0/ and putting the.jarinto/app/data/extensionscreate the folder
/app/data/recordingsand set the correct permissions.mkdir -p /app/data/recordings chown -R cloudron:tomcat /app/data/recordings chmod 2750 /app/data/recordings/add needed configuration to
/app/data/guacamole.properties:recording-search-path: /app/data/recordingsRestart the app.
When I now edit a connection I can see the recording settings for this connection:
Here we set:
Recording path:to${HISTORY_PATH}/${HISTORY_UUID}Recording name:to${GUAC_DATE}-${GUAC_TIME}Automatically create recording path:checked
Save.
Now when I start the connection, the follow log is visible:
guacd[599]: INFO: Creating new client for protocol "ssh" guacd[599]: INFO: Connection ID is "$9db0c19b-5bb8-4320-b62c-397a79e8b9a0" guacd[636]: DEBUG: Processing instruction: size guacd[636]: DEBUG: Processing instruction: audio guacd[636]: DEBUG: Processing instruction: video guacd[636]: DEBUG: Processing instruction: image guacd[636]: DEBUG: Processing instruction: timezone guacd[636]: DEBUG: Processing instruction: name guacd[636]: DEBUG: Parameter "scrollback" omitted. Using default value of 1000. guacd[636]: DEBUG: Parameter "font-name" omitted. Using default value of "monospace". guacd[636]: DEBUG: Parameter "font-size" omitted. Using default value of 12. guacd[636]: DEBUG: Parameter "color-scheme" omitted. Using default value of "". guacd[636]: DEBUG: Parameter "enable-sftp" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "sftp-root-directory" omitted. Using default value of "/". guacd[636]: DEBUG: Parameter "sftp-disable-download" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "sftp-disable-upload" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "port" omitted. Using default value of "22". guacd[636]: DEBUG: Parameter "timeout" omitted. Using default value of 10. guacd[636]: DEBUG: Parameter "read-only" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "typescript-name" omitted. Using default value of "typescript". guacd[636]: DEBUG: Parameter "create-typescript-path" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "typescript-write-existing" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "recording-exclude-output" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "recording-exclude-mouse" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "recording-include-keys" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "recording-write-existing" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "server-alive-interval" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "backspace" omitted. Using default value of 127. guacd[636]: DEBUG: Parameter "terminal-type" omitted. Using default value of "linux". guacd[636]: DEBUG: Parameter "timezone" omitted. Using default value of "Europe/Berlin". guacd[636]: DEBUG: Parameter "disable-copy" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "disable-paste" omitted. Using default value of 0. guacd[636]: DEBUG: Parameter "wol-send-packet" omitted. Using default value of 0. guacd[636]: INFO: User "@49d1df2d-669f-4b83-99e9-6e50483e8cde" joined connection "$9db0c19b-5bb8-4320-b62c-397a79e8b9a0" (1 users now present) guacd[636]: DEBUG: Client is using protocol version "VERSION_1_5_0" guacd[636]: INFO: Recording of session will be saved to "/app/data/recordings/75b6dda2-00c9-330a-869c-f8eaac87d77a/20251020-132330". 13:23:30.647 [http-nio-8080-exec-10] INFO o.a.g.tunnel.TunnelRequestService - User "guacadmin" connected to connection "1". guacd[636]: DEBUG: Attempting private key import (WITHOUT passphrase) guacd[636]: INFO: Auth key successfully imported. guacd[636]: WARNING: No known host keys provided, host identity will not be verified. guacd[636]: DEBUG: Supported authentication methods: publickey,password guacd[636]: WARNING: Unable to set the timezone: SSH server refused to set "TZ" variable. guacd[636]: INFO: SSH connection successful.And I can see the recorded file in:
ls -lah /app/data/recordings/75b6dda2-00c9-330a-869c-f8eaac87d77a/20251020-132330and viewable in the history overview:

@james
presume you'll add that to the docs if you've not already done so? 
-
Hello @jdaviescoates
Already done => https://docs.cloudron.io/packages/guacamole/#recording