Setting logging via container configuration


  1. Open resident app
  2. Open and search env in  /opt/persistent/ContainerBundles/HtmlApp/config.json
  3. Add GST_DEBUG as below
    1. "env": [                                                                                                                                      
                  "XDG_RUNTIME_DIR=/tmp",                                                                                                                   
                  "LD_PRELOAD=libwayland-client.so.0:libwayland-egl.so.1:libWPEFrameworkTracing.so.1",                                                      
                  "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",                                                                      
                  "GST_VIRTUAL_DISP_WIDTH=1920",                                                                                                            
                  "GST_VIRTUAL_DISP_HEIGHT=1080",                                                                                                           
                  "GST_VIRTUAL_SD_DISP_WIDTH=1920",                                                                                                         
                  "GST_VIRTUAL_SD_DISP_HEIGHT=1080",                                                                                                        
                  "AAMP_ENABLE_AUDIO_DESC=true",                                                                                                            
                  "do_not_change_display=true",                                                                                                             
                  "SAGEBIN_PATH=/usr/bin/",                                                                                                                 
                  "LD_LIBRARY_PATH=/usr/lib:/usr/lib/wpeframework/plugins",                                                                                 
                  "TRACE_FILENAME=/tmp/tracebuffer",                                                                                                        
                  "TRACE_DOORBELL=/tmp/tracebuffer.doorbell",                                                                                               
                  "WARNINGREPORTING_FILENAME=/tmp/warningreportingbuffer",                                                                                  
                  "WARNINGREPORTING_DOORBELL=/tmp/warningreportingbuffer.doorbell",                                                                         
                  "SKY_DBUS_DISABLE_UID_IN_EXTERNAL_AUTH=1",                                                                                                
                  "GST_DEBUG=2,westerossink:6",                                                                                                             
                  "DBUS_SYSTEM_BUS_ADDRESS=unix:path=/var/run/dbus/system_bus_socket",                                                                      
                  "BREAKPAD_FD=3"                                                                                                                           
              ],
  4. check if app is running on container mode or not

    1. $DobbyTool list

    2. Note: if it is shown no containers then start the container(see below)

      1. start the container using the command

        1. Enable datamodel values
          1. tr181 -s -t boolean -v true Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.Dobby.WPE.Enable
          2. Note: For running the above command, support for the data model should be present in /etc/data-model.xml.

          3. <object base="Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.Dobby.WPE." access="readOnly" minEntries="0" maxEntries="1" >
                  <parameter base="Enable" access="readWrite" notification="0" maxNotification="2" >
                    <syntax>
                      <boolean/>
                    </syntax>
                  </parameter>
                </object>
        2. Reboot the device to reflect the value of tr181.
        3. Verify datamodel values - should return true
          1. tr181 Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.Dobby.WPE.Enable
  5.   Launch HtmlApp using RDKShell launch command.
      1. curl 'http://127.0.0.1:9998/jsonrpc' -H -X POST -d '{"jsonrpc": "2.0","id": 4,"method": "org.rdk.RDKShell.1.launch", "params": {"callsign":"HtmlApp","type":"HtmlApp","visible":true}}'
      2.  Verify that HtmlApp is running in container mode.
      3. root@raspberrypi4-64-rdk-android-mc:~# DobbyTool list
        descriptor | id                               | state
        ------------|----------------------------------|-------------
                879 | HtmlApp                          | running
  6. stop the container using the command
    1. root@raspberrypi4-64-rdk-android-mc:~# DobbyTool stop HtmlApp 
      stopped container 'HtmlApp'
      root@raspberrypi4-64-rdk-android-mc:~# DobbyTool list
      no containers


Enable logging via service file


steps

 mkdir /opt/aamp_gst_log
 cp /lib/systemd/system/wpeframework.service /opt/aamp_gst_log/
 cd /opt/aamp_gst_log/
 sed -i '13 i EnvironmentFile=/opt/aamp_gst_log/westeros-env'  wpeframework.service
 cp /etc/default/westeros-env /opt/aamp_gst_log/
 sed -i '2 i GST_DEBUG=4'  /opt/aamp_gst_log/westeros-env
 systemctl daemon-reload
 systemctl restart wpeframework & killall -HUP WPEFramework WPEProcess

please see the response of the above commands in below code block:

root@raspberrypi4-64-rdk-android-mc:/# mkdir /opt/aamp_gst_log
root@raspberrypi4-64-rdk-android-mc:/# cp /lib/systemd/system/wpeframework.service /opt/aamp_gst_log/
root@raspberrypi4-64-rdk-android-mc:/#  cd /opt/aamp_gst_log/
root@raspberrypi4-64-rdk-android-mc:/opt/aamp_gst_log# 
root@raspberrypi4-64-rdk-android-mc:/opt/aamp_gst_log# ls
wpeframework.service
root@raspberrypi4-64-rdk-android-mc:/opt/aamp_gst_log# sed -i '13 i EnvironmentFile=/opt/aamp_gst_log/westeros-env'  wpeframework.service
root@raspberrypi4-64-rdk-android-mc:/opt/aamp_gst_log#  cp /etc/default/westeros-env /opt/aamp_gst_log/
root@raspberrypi4-64-rdk-android-mc:/opt/aamp_gst_log#  sed -i '2 i GST_DEBUG=4'  /opt/aamp_gst_log/westeros-env 
root@raspberrypi4-64-rdk-android-mc:/opt/aamp_gst_log#  systemctl daemon-reload
root@raspberrypi4-64-rdk-android-mc:/opt/aamp_gst_log#  systemctl restart wpeframework & killall -HUP WPEFramework WPEProcess
[1] 12485
root@raspberrypi4-64-rdk-android-mc:/opt/aamp_gst_log# ls
westeros-env          wpeframework.service

This is how wpeframework.service should look after setting EnvironmentFile . Goal is to add "EnvironmentFile" config, so please check if it is added to correct location as below


wpeframework.service
root@raspberrypi4-64-rdk-android-mc:/opt/aamp_gst_log# cat wpeframework.service 
[Unit]
Description=wpeframework
Before=xre-receiver.service
After=lighttpd.service iarmbusd.service pwrmgr.service pwrmgr2.service irmgr.service dsmgr.service sysmgr.service authservice.service  

[Service]
PIDFile=/var/run/WPEFramework.pid
EnvironmentFile=-/etc/wpeframework/WPEFramework.env
Environment="LD_LIBRARY_PATH=/usr/lib:/media/apps/netflix/usr/lib:/tmp/netflix/usr/lib:/media/apps/libcobalt/usr/lib:/tmp/libcobalt/usr/lib"
Environment="XDG_RUNTIME_DIR=/tmp"
Environment="XDG_DATA_HOME=/opt/QT/home"
Environment="LD_PRELOAD=/usr/lib/libwesteros_gl.so.0"
EnvironmentFile=/opt/aamp_gst_log/westeros-env
Environment="RDKSHELL_EASTER_EGG_FILE=/etc/rdkshell_eastereggs.conf"
ExecStartPre=-/lib/rdk/cardselect_rpi4.sh
ExecStart=-/usr/bin/WPEFramework -b
ExecStop=/bin/kill $MAINPID
Restart=always
KillMode=mixed

[Install]
WantedBy=multi-user.target

setting /opt/aamp_gst_log/westeros-env


root@raspberrypi4-64-rdk-android-mc:/opt/aamp_gst_log# cat westeros-env 
XDG_RUNTIME_DIR=/run
GST_DEBUG=4
WAYLAND_DISPLAY=wayland-0


  • No labels