You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Pre-requisite

  • Access to Raspberry Pi terminal.
  • Access to Xconf server from browser https://xconf.rdkcentral.com:9093/admin/ 
    • For Admin mode(read and writ permission) -> username : admin, password: RdkXcadm$2120
    • For User mode(only read mode) -> username: user ,password: RdkXcusr@2210          
  • Disable log rotation in RPI using below command. (This is optional)
    • systemctl disable rdkbLogMonitor
    • reboot 


Admin UI: Common Configuration

  • Define Environments

           Flow:  Xconf-server -> Common -> Environments
           Click on Create Button.

           

         

           Click on Create, Enter the ID and Description fields, click on Save.
           ID : <Unique Identifier>  ; Description : <Description>

           


  • Define Models

          Flow: Xconf-server -> Common -> Models
          Click on Create, Enter the ID and Description fields, click on Save.

           

           


  • Define Mac List

          Flow: Xconf-server -> Common -> MAC Lists -> Create -> Add your Device MAC address -> Save.

         


  • Define IP List

          Flow: Xconf-server -> Common -> IP Lists -> Create-> Create -> Add your device IP address -> Save.

         

          


Feature Validation: LogUpload

  • In Raspberry Board, add the server details for log upload.
  • Configure the Bellow details to dcm.properties and comment out the other details .

            File :  /etc/dcm.properties

           LOG_SERVER=xconf.rdkcentral.com
           DCM_LOG_SERVER=https://xconf.rdkcentral.com/xconf/logupload.php
           DCM_LOG_SERVER_URL=https://xconf.rdkcentral.com:9092/loguploader/getSettings
           DCM_SCP_SERVER=xconf.rdkcentral.com
           DCM_LA_SERVER_URL=https://xconf.rdkcentral.com/xconf/logupload.php

  • In Xconf UI Change Application to stb in top right corner of the window.

           


  • Defining the Upload repositories

          Flow: Xconf-server -> DCM -> Upload repository -> create ->save
          Name: <Unique Identifier>
          Description: <Unique Identifier>
          URL:  HTTP: http://35.161.239.220/xconf/telemetry_upload.php

         


  • Defining the formula

           Flow: Xconf-server -> DCM -> Formulas -> Create
           Name: <unique name for log upload>
           Description: <Short description for log upload>
           Percentage: 100
           Build condition:  estbMacAddress IS <MAC Address> OR estbIP IS <IP Address> 
                                    (or)  estbMacAddress IS <MAC Address>  AND model is <Model Name>   (Model name is already configured under Common Tab)

           


  • As soon as the formula is saved, then a ‘define Settings’ tab with ‘Create Device Settings’, ‘Create log settings’, Create VOD settings’ will be available.

         


  • Click on 'Create Device Settings' tab and edit the Device Settings.

           


  • Click on ‘Create Log Update setting’ and Edit the Log upload Setting (Create schedule & add the upload repository created beforehand).

           Name: Enter the name given during Log Upload Formula Creation.
           Note: The formula will be effective only if we select 'Are Settings Active' option to 'true' in 'Create Device Settings' and 'Log Upload settings'.

           


Verification at Xconf UI.

  • Test Page for Log Upload
    Flow: Xconf-Server -> DCM ->Test Page 
  • Parameters: give a parameter that will match the one of the formulas that you have created.
    • estbMacAddress < MAC Address> or
    • estbIP <IP Address>
    • model <Model Name>

     

Log Upload: Client End Verification (In RPI)


  • Sample Output:

         


  • On successful Log upload, conf file will be created under /tmp directory. This file contains the details of log upload settings which are already configured in the server.
              File : /tmp/DCMSettings.conf

         


  • Verify the logs in /rdklogs/logs/dcmscript.log file
  • The log file contains the details of
    • Service status, tftp details, reboot flag , check on reboot flag ,
    • Upload settings details – location, protocol.
  • Shows list of files which are to be uploaded to the server as a tar file (logs will be zipped and creates a tar file on every bootup/service restart), Backup folder details (/rdklogs/logs/PreviousLogs_backup)
  • HTTP request processing status.   
  • Log files are stored in .tgz format and markers are stored in <mac_address>-TELE-<date>.json

         


      

  • Json response on server

         


  • Log files are stored in .tgz format and markers are stored in <mac_address>-TELE-<date>.json

         


Feature Validation: Telemetry

  • Telemetry configuration can be done by adding a permanent profile which contains below objects
    • Upload repository
    • Profile options (Header, content, frequency etc.)
  • Creating a targeting rule which is basically mapping the profile to a set of MAC/IP/Device etc
  • Note: DCM settings should be already done for the devices that you are going to set telemetry configuration.


  • Create a new Telemetry Profile.
    Flow: X-conf-server -> Telemetry -> Permanent Profiles -> Create button

           


  • The permanent profile must have the below entries
    • Name of the RPI device profile
    • Upload Repository (HTTP/TFTP, HTTP : http://35.161.239.220/xconf/telemetry_upload.php)
    • Telemetry profile Entries(We can add multiple telemetry profiles using “+” button.
    • In the Telemetry Permanent Profile page, there will be a 5th column that allows a component name to be entered. The component name is optional and may be present for only some of the entries in the Telemetry profile.

         


  • Once you save the permanent profile, you will get a message overlay ‘Profile added to the pending changes’. Then go to Changes -> select the profile you create -> Click on “Approve selected changes”.

           


  • Then the permanent profile will be listed under Telemetry - > Permanent profiles.
  • Creating targeting rules for RPI
    • Flow: X-conf-server -> Telemetry -> Targeting rules -> Create
    • Name : Name of the Targeting Rule
    • Rule : ex : estbMacAddress IS <MAC Address>
    • Bound Profile : Choose the Permanent Profile

           


  • Verification of telemetry test page.
    After creating the permanent profile and targeting rules, go to Telemetry->Test page and give a parameter that will match the one of the rules that you have created. Then matched rule will be displayed like below.

           


          

         Sample Output

         


  • Server configuration that we set in Xconf server is copied to /tmp/DCMSettings.conf file.

           


           

  • Content of json Response

         

  • All the Logs will be updated as .tgz format in xconf server.

         


Feature Validation: Telemetry2_0

Pre- requisites for enabling Telemetry2_0

Telemetry Version: 2.0.1 (by default telemetry version as 1)

         


  • Below are the steps for enabling telemetry 2.0.1 in RPI
  1. dmcli eRT setv Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.Telemetry.Enable bool true
  2. dmcli eRT setv Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.Telemetry.Version string 2.0.1
  3. dmcli eRT setv Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.Telemetry.ConfigURL string https://xconf.rdkcentral.com:9092/loguploader/getT2Settings
  4. touch /nvram/enable_t2_debug
  5. reboot the device
  6. pidof "telemetry2_0" - check the running status of telemetry2
  7. T2 DataModel will be loaded
  • Below screenshot for enabling the T2 process of version 2.0.1 in RPI

         


  • After reboot the device

         


  • Telemetry 2.0 Report Profiles
    Telemetry 2 adds support for RDK Components to send their telemetry data to the T2 component for reporting. This allows for moving away from the CPU-intensive process of searching through log files for telemetry strings.
    Telemetry 2.0 allows for an RDK device to be updated with a set of T2 profiles at any time.

          

  • T2 DataModel

          There are 2 parameters under T2 report profiles,


DM

Description

1

Device.X_RDKCENTRAL-COM_T2.ReportProfilesMsgPack

Value must be JSON configuration blob in base 64 encoded msgpack format

2

Device.X_RDKCENTRAL-COM_T2.ReportProfiles 

Value must be JSON configuration blob in string

     

  • DMCLI SET Command for T2 Report Profile
dmcli eRT setv Device.X_RDKCENTRAL-COM_T2.ReportProfiles string '{"profiles":[{"name":"RDKB_CCSPWiFi_Profile","hash":"hash1","value":{"Name":"RDKB_CCSPWifi_Profile","Description":"Report to check WiFi Parameters","Version":"1","Protocol":"HTTP","EncodingType":"JSON","ReportingInterval":180,"TimeReference":"0001-01-01T00:00:00Z","ActivationTimeOut":1800,"Parameter":[{"type":"dataModel","reference":"Profile.Name"},{"type":"dataModel","reference":"Profile.Version"},{"type":"dataModel","reference":"Device.WiFi.Radio.1.Stats.X_COMCAST-COM_NoiseFloor"},{"type":"event","eventName":"2GclientMac_split","component":"wifihealth","use":"absolute"},{"type":"event","eventName":"5GclientMac_split","component":"wifihealth","use":"absolute"},{"type":"event","name":"wifiradio WIFI_COUNT","eventName":"WIFI_MAC_1_TOTAL_COUNT:0","component":"wifiradio","use":"count","reportEmpty":false},{"type":"dataModel","name":"UPTIME","reference":"Device.DeviceInfo.UpTime","use":"absolute"}],"HTTP":{"URL":"http://35.161.239.220/xconf/telemetry_upload.php","Compression":"None","Method":"POST","RequestURIParameter":[{"Name":"deviceId","Reference":"Device.DeviceInfo.X_COMCAST-COM_CM_MAC"},{"Name":"reportName","Reference":"Profile.Name"}]},"JSONEncoding":{"ReportFormat":"NameValuePair","ReportTimestamp":"None"}}},{"name":"RDKB_SelfHeal_Profile","hash":"hash2","value":{"Name":"RDKB_SelfHeal_Profile","Description":"Report to check SelfHeal Parameters","Version":"2","Protocol":"HTTP","EncodingType":"JSON","ReportingInterval":180,"TimeReference":"0001-01-01T00:00:00Z","ActivationTimeOut":1800,"Parameter":[{"type":"dataModel","reference":"Profile.Name"},{"type":"dataModel","reference":"Profile.Version"},{"type":"dataModel","name":"UPTIME","reference":"Device.DeviceInfo.UpTime","use":"absolute"},{"type":"dataModel","reference":"Device.DeviceInfo.UpTime","use":"absolute"},{"type":"event","eventName":"SYS_ERROR_AdvSecurity_NotRunning","component":"SELF_HEAL","use":"absolute"},{"type":"event","eventName":"SYS_SH_lighttpdCrash","component":"test-and-diagnostic","use":"count","reportEmpty":false},{"type":"dataModel","name":"WAN_SSH_STATUS","reference":"Device.DeviceInfo.X_RDKCENTRAL-COM_Syndication.WANsideSSH.Enable","use":"absolute"}],"HTTP":{"URL":"http://35.161.239.220/xconf/telemetry_upload.php","Compression":"None","Method":"POST","RequestURIParameter":[{"Name":"deviceId","Reference":"Device.DeviceInfo.X_COMCAST-COM_CM_MAC"},{"Name":"reportName","Reference":"Profile.Name"}]},"JSONEncoding":{"ReportFormat":"NameValuePair","ReportTimestamp":"None"}}}]}'


  • DMCLI GET




  • Telemetry 2.0 Report Profiles Generation in xconf,
    Flow: xconf Server UI -> Telemetry -> Telemetry 2.0 Profiles -> create

           


  • Once you save the Telemetry 2.0 profile, you will get a message overlay ‘Profile added to the pending changes’. Then go to Changes -> select the profile you create -> Click on “Approve selected changes”.

           


  • Create Telemetry 2.0 Targeting Rule
    Flow: Xconf Server -> Telemetry > Telemetry 2.0 Rules > create

           


  • Verification
    Flow: Xconf -Server -> Telemetry > Telemetry 2.0 Test page

         


                   


  • Log Verification in RPI
    Path: rdklogs/logs/
    file: telemetry2_0.txt.0

         


         


           


Feature Validation: Remote Feature Control (RFC)

           


  • Verify the existing(default) value of TR181 parameters

            root@RaspberryPi-Gateway:~# dmcli eRT getv   Device.X_Comcast_com_ParentalControl.ManagedSites.Enable Device.X_Comcast_com_ParentalControl.ManagedServices.Enable
            CR component name is: eRT.com.cisco.spvtg.ccsp.CR
            subsystem_prefix eRT.
            getv from/to component(eRT.com.cisco.spvtg.ccsp.pam): Device.X_Comcast_com_ParentalControl.ManagedSites.Enable
            Execution succeed.
            Parameter    1 name: Device.X_Comcast_com_ParentalControl.ManagedSites.Enable
            type:       bool,    value: false
            Parameter    2 name: Device.X_Comcast_com_ParentalControl.ManagedServices.Enable
            type:       bool,    value: true

           


  • Xconf Server UI Configuration
    Change Application to stb in top right corner of the window.

           




  • No labels