l12 - device health

Upload: srihari

Post on 02-Jun-2018

234 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/10/2019 L12 - Device Health

    1/39

    1COMPANY CONFIDENTIAL

    L12Device Health

    Jeff Eaton

  • 8/10/2019 L12 - Device Health

    2/39

    2COMPANY CONFIDENTIAL

    L07 - Device Health - Agenda

    Device HealthOverview

    Dashboard GUI

    SmartSystems Console Properties Viewer

    Device Health XML for ITCSSApiRules Language

    Ready-To-Work Control

    SmartSystems Device Health Rules Editor

  • 8/10/2019 L12 - Device Health

    3/39

    3COMPANY CONFIDENTIAL

    DeviceHealth Overview

    Collect Data, Process Rules, Report Status

    Periodically collect health dataRules Engine processes health data with user programmablerules

    Rules trigger Ready-To-Work status (Blue Light)Dashboard GUI shows current state and reasons for thisstateRules trigger messages sent up line to SmartSystemsconsoleView health data via SmartSystems Properties ViewerDevice Support

    70 Series, CK3R/X, CN50, CS40, CV41, CV61

  • 8/10/2019 L12 - Device Health

    4/39

    4COMPANY CONFIDENTIAL

    Health Data Collected

    Detailed battery health statistics for on-time replacementNetwork interface statistics for trouble-shooting connectivityissues

    Memory, Storage, Process info for monitoring criticalthreshold violations

    Scanner statistics to trend throughput deviations acrossdevice pools

    Version information to ensure up to date software

    On-device as well as remote alerts upon deviations

    NOTE: Info accessible via any device management console!

  • 8/10/2019 L12 - Device Health

    5/39

    5COMPANY CONFIDENTIAL

    BackupBatteryFlag

    BackupBatteryFul lL i feTime

    BackupBatteryL i fePercent

    BackupBatteryL i feTime

    BackupBatteryVoltage

    BatteryChargerState

    BatteryCurrent

    BatteryFlag

    ManufacturedDate

    Collected Health Items - Battery

    BatteryHealth

    BatteryTemperature

    BatteryChemistry

    BatterymAHourConsumed

    ChargingTime

    ExtremeTemperatureTime

    HighTemperatureTime

    LastFul lCharge

    LowTemperatureTime

    BatteryLastChanged

    BatteryLi fePercent

    BatteryLi feTime

    BatteryHighTemperatureReached

    BatteryLowTemperatureReached

    BatteryPrevCPUUsage

    BatteryTemperature

    BatteryVoltage

    PartNumber

    SerialNumber

    UsageTime

    What if some batteries are not lasting through a shift?

  • 8/10/2019 L12 - Device Health

    6/39

    6COMPANY CONFIDENTIAL

    Collected Health Items - WLANWLAN\AccessPoint

    AssociatedAuthent icat ionBSSIDChannelEncrypt ionSSID

    WLAN\AdapterStatsACKFai lureCountFCSErrorCount

    Fai ledCountFrameDuplicateCountMult ipleRetryCountPacketReceiveErrorsPacketSendErrorsPacketsReceivedPacketsSentRTSFailureCount

    ReceivedFragmentCountRetryCountTimeUnassociatedTotalRoamsTransmit tedFragmentCount

    WLAN\AdapterAPIPAAntennaCountryDHCPDHCPLeaseExpiresDHCPLeaseObtainedDHCPServerDefaultGatewayDriverEnabled

    HardwarePresentIPIntermecDhcpVersionLink_MbpsMAcNICnoti f icat ionsNoise_dBmPower

    RSSI_dBmRoamThreshold_dBmSNR_dBSubnetMaskTxPower_mWZeroConf ig

  • 8/10/2019 L12 - Device Health

    7/397COMPANY CONFIDENTIAL

    Collected Health Items - WLAN

    WLAN\Association\00:23:ab:24:b2:c0

    Assoc ia t ions

    AverageTimeAssociated_seconds

    MaxLink_Mbps

    MaxNoise_dBm

    MaxRSSI_dBmMaxTxPower_mW

    MinLink_Mbps

    MinNoise_dBm

    MinRSSI_dBm

    MinTxPower_mW

    TimeAssociated_seconds

    WLAN\BSSID\00:02:2d:64:e1:5e

    Conf igurat ion\ATIMWindow

    Conf igurat ion\BeaconPer iod

    Conf igurat ion\DSConf ig

    InfrastructureMode

    MacAddress

    NetworkType

    Privacy

    RSSI

    SSID

    SupportedRates\0

    SupportedRates\1

    SupportedRates\2SupportedRates\3

    SupportedRates\4

    SupportedRates\5

    SupportedRates\6

    SupportedRates\7

    Access Points

    the device has been associated with

    Access Point List

  • 8/10/2019 L12 - Device Health

    8/398COMPANY CONFIDENTIAL

    Scanning Health

    StateGood Reads

    Trigger Pulls

    Trigger ReleasesAccumulated Decode Time

    Internal Scanner only!!

  • 8/10/2019 L12 - Device Health

    9/399COMPANY CONFIDENTIAL

    Dashboard GUI

    Accessed via ? key on the keypad

    Displays current ReadyToWork status

    Displays select device health informationCurrent screen and health data are capturedwhen Dashboard App starts

    Disable/enable Rules causing unhealthy status

  • 8/10/2019 L12 - Device Health

    10/3910COMPANY CONFIDENTIAL

    Dashboard GUI

  • 8/10/2019 L12 - Device Health

    11/3911COMPANY CONFIDENTIAL

    Dashboard Configuration

    Enable/Disable Dashboard GUI

  • 8/10/2019 L12 - Device Health

    12/39

    12COMPANY CONFIDENTIAL

    Dashboard GUI Configuration

    Dashboard GUI Screen Capture Location

  • 8/10/2019 L12 - Device Health

    13/39

    13COMPANY CONFIDENTIAL

    SmartSystems Console Properties Viewer

  • 8/10/2019 L12 - Device Health

    14/39

    14COMPANY CONFIDENTIAL

    SmartSystems API

    Set of APIs to manage settings locallyDevice Management Resource Kit - IDL

    Device support (7xx, CVx, CNx, CKx, CS40)

    Language support, C, C++, C#, VB.Net, JavaXML DrivenSmartSystems configuration XML

    Now can be used to retrieve Device Health items

    Health items requ ire Managementl icense ondevice

  • 8/10/2019 L12 - Device Health

    15/39

    15COMPANY CONFIDENTIAL

    Licensing

    No license required to access device health throughdashboard on device

    Management License required for any Partner applicationor Remote Console (including SmartSystems Console) to

    access device healthPer device license

    Only applicable on devices with 4.XX SmartSystems Client

    60-day demo period available

    Part Number: 454-048-001

    List Price: $20

  • 8/10/2019 L12 - Device Health

    16/39

    16COMPANY CONFIDENTIAL

    SmartSystems Settings XML - Device Health

    How do you figure out the name path??

    SmartSystems Asset Message

    Health Data Model Files Intermec\SmartSystems\SS_Lib\Tools\RulesEditor\DataModels

  • 8/10/2019 L12 - Device Health

    17/39

    17COMPANY CONFIDENTIAL

    Exercise 1ITCSSApi

    Retrieve individual health items via the ITCSSApi

    Lab12Device Health\Exercise 1 Ins truc t ion s.txt

  • 8/10/2019 L12 - Device Health

    18/39

    18COMPANY CONFIDENTIAL

    SmartSystems Settings XMLDevice Health

  • 8/10/2019 L12 - Device Health

    19/39

    19COMPANY CONFIDENTIAL

    Exercise 2ITCSSApi

    Retrieve all health data via the ITCSSApi

    Lab12Device Health\Exercise 2 Instru ct ions .txt

  • 8/10/2019 L12 - Device Health

    20/39

    20COMPANY CONFIDENTIAL

    Device Health Rules - Overview

    Simple Interpreted Programming LanguageMonitor Health, Configuration and RegistryItems

    Allows for Setting the Ready-To-Work state /lightUser Defined Health Messages with the RtwstateExecuted when health data is collected or areferenced configuration item or registry item is

    manipulatedRequires a Rules file and a Language XML file

  • 8/10/2019 L12 - Device Health

    21/39

    21COMPANY CONFIDENTIAL

    Example Rules File Content

    /* RTW State Defin i t ions */INT RTW_BROKEN = 1;

    INT RTW_UNHEALTHY = 2;

    INT RTW_HEALTHY = 3;

    /* b ind var iab le to a health item */INT MemoryL oad = @[heal th/System/Memo ry/MemoryL oad];

    /*If the MemoryLoad is greater than 90%, set the dev ice to UnHealthy */

    i f (Memo ryLoad > 90)

    {

    SetRtwState (RTW_UNHEALTHY, " " , 11, __BLOCK__);

    }

  • 8/10/2019 L12 - Device Health

    22/39

    22COMPANY CONFIDENTIAL

    Device HealthXML RTW number to text map

  • 8/10/2019 L12 - Device Health

    23/39

    23COMPANY CONFIDENTIAL

    Health RulesControlling Ready-To-Work

    INT RTW_BROKEN = 1;

    INT RTW_UNHEALTHY = 2;

    INT RTW_HEALTHY = 3;

    SetRtwState (RTW_UNHEALTHY, Optional Text, 40, __BLOCK__);ForceAssetMsg ();

    Rtw State Order of Precedence: Broken

    Unhealthy

    Healthy

  • 8/10/2019 L12 - Device Health

    24/39

  • 8/10/2019 L12 - Device Health

    25/39

    25COMPANY CONFIDENTIAL

    Health Rules Language - Basics

    Data Bindings

    Health, Configuration, Registry, Static STRING systemUpTime = @[health:/System/UpTime];

    INT tcoGUIEnabled = @[cfg:/Device Monitor/DeviceHealth/TCOGuiEnabled];

    INT intRegCheck =@[reg:/HKEY_LOCAL_MACHINE/Software/MyCompany/IntValue];

    INT loopCnt = @[static/loopCnt];

    Strings are initialized to or empty strings

    Integer and Floats are initialized to 0

    Health Definition filesLocated in ss_lib\Tools\RulesEditor\DataModels

    NetworkHealthDataModel.xml SystemHealthDataModel.xml WWANConfigletDataModel.xml

  • 8/10/2019 L12 - Device Health

    26/39

    26COMPANY CONFIDENTIAL

    Health Rules Language - Basics

    Operatorsarithmetic: -, +, *, /

    Logical: ==, =,

    Boolean: &&, ||, ! (and, or, not)

    Assignment: =

    Threshold: T

  • 8/10/2019 L12 - Device Health

    27/39

    27COMPANY CONFIDENTIAL

    Health Rules Language - Basics

    No looping mechanismNested If / else is supported

    if (a > b) || (c < d)

    {

    /* do someth ing */

    }

    else

    {

    if (ab > (5 + 10 + 20))

    {

    /* do someth ing else */}

    }

  • 8/10/2019 L12 - Device Health

    28/39

    28COMPANY CONFIDENTIAL

    Health Rules Language - Basics

    STRING IntrinsicsINT LENGTH (STRING arg1)

    INT MATCH (STRING arg1, STRING arg2)

    STRING CONCAT (STRING arg1, STRING arg2)

    TIME IntrinsicsINT BETWEEN(TIME time1, TIME time2, TIME time3)

    STRING TO_STRING(TIME time1)TIME TO_TIME(STRING string1)

  • 8/10/2019 L12 - Device Health

    29/39

    29COMPANY CONFIDENTIAL

    Rules LanguageStatics

    INT iterCounter = @[static/IterationCounter];

    TO_STRING (iterCounter);

    INT iterCoun ter = @[stat ic/ Iterat ionCou nter];STRING tempBuf = " " ;

    i terCoun ter = iterCounter + 1;

    i f (iterCounter > 2)

    {

    tempBu f = CONCAT (" Iterat ion Coun ter = " , TO_STRING (iterCou nter));

    i terCoun ter = 0;

    SetRtwState (RTW_UNHEALTHY, tempBuf, 0, __BLOCK__);

    }

  • 8/10/2019 L12 - Device Health

    30/39

    30COMPANY CONFIDENTIAL

    Rules Editor

    Accessed via the SmartSystems ConsoleMenu Tools->Start Rules Editor

    Right Click a Rule Bundle

    Allows you to create / edit rule sets

    Textual and graphic representation of rules

    Automatically creates rule bundles

    Bundles can update one or more devices with rule

    setsNo reboot required to update rules

  • 8/10/2019 L12 - Device Health

    31/39

    31COMPANY CONFIDENTIAL

    Rules Editor

  • 8/10/2019 L12 - Device Health

    32/39

    32COMPANY CONFIDENTIAL

    Exercise 3Rules EditorAdd Config Item Rule

    Create a Configuration Item Rule

    Lab12Device Health\Exercise 3 Instru ct ions .txt

    STRING Enable_Code_39 = @[cfg/Data Collect ion /Scanners:0/Symbo log ies/Code

    39/Enab le Code 39];

    i f (Enable_Code_39 != " 1")

    {

    SetRtwState(RTW_UNHEALTHY, "" , 50, __BLOCK__);

    }

  • 8/10/2019 L12 - Device Health

    33/39

    33COMPANY CONFIDENTIAL

    Exercise 4Rules EditorAdd Registry Item Rule

    Create a Registry Entry Health Rule

    Lab12Device Health\Exercise 4 Ins truc tion s.txt

    STRING RuleCheckValue =

    @[reg/HKEY_LOCAL_MACHINE/SOFTWARE/Intermec/RuleCheckValue];

    if (RuleCheckValue != 1")

    {SetRtwState(RTW_UNHEALTHY, " " , 50, __BLOCK__);

    }

  • 8/10/2019 L12 - Device Health

    34/39

    34COMPANY CONFIDENTIAL

    SmartSystems Settings XMLRtw Info

  • 8/10/2019 L12 - Device Health

    35/39

    35COMPANY CONFIDENTIAL

    Exercise 5ITCSSApi

    Retrieve Rtw state data via the ITCSSApi

    Lab12Device Health\Exercise 5 Instru ct ions .txt

  • 8/10/2019 L12 - Device Health

    36/39

    36COMPANY CONFIDENTIAL

    What about Printers?

    You can access bluetooth connected printer healthinformation via the connected computer.

    New Desktop printers have health information and

    you can write rules for them. There is no RuleEditor Support.

    You must download rules to a persistent directoryand point the configuration parameter at them.

  • 8/10/2019 L12 - Device Health

    37/39

    37COMPANY CONFIDENTIAL

    What about Printers?

    Printer Demo

    Show Printer Health Fields from an Asset Message

    Show example rules

    Send rules to printer and configure printer to usethem

  • 8/10/2019 L12 - Device Health

    38/39

    38COMPANY CONFIDENTIAL

    Thank You!

    Questions & Discussion

  • 8/10/2019 L12 - Device Health

    39/39