CTT - Escalation

From PlcWiki

(Difference between revisions)
Jump to: navigation, search
(Info z CTT ercordu a intervalu)
Line 1: Line 1:
 +
===Eskalátor===
 +
 +
Eskalátor voláme na adrese server/ctt/escalation
 +
 +
možné url parametry: /escalation/?
 +
 +
    hash=<string> => hash pouze pro jednoho konkrétního ownera, povinný u instalací, kde není autentifikace přes UserManagement 2
 +
    recordid=<string> => ID konkrétního intervalu, který bude eskalátor kontrolovat (nebude projíždět všechny otevřené intervaly)
 +
    again=<1|0> => eskalátor se bude znovu ptát CLEy na pravidla, pokud nebyla vrácena správná (např. error), správně se musí vrátit objekt (i kdyby prázdný) - defaultně again=1
 +
 +
===CRON===
 +
 +
Cesta ke cronu, pokud chceme nastavit např. minutový tikač:
 +
 +
    /etc/cron.d/ctt-escalation (nebo jiný název)
 +
 +
=====soubor ctt-escalation=====
 +
 +
Vzor tikače nastaveného na jednu minutu pro konkrétního ownera:
 +
 +
    # Nastaveni intervalu, kdy budeme tahat za escalator - vystup se nikam neuklada
 +
    */1 * * * * root wget -O - 'https://app.clever.cz/ctt/escalation?hash=8849d073-1eee-11eb-b7d0-05ed861d1beb' > /dev/null 2>&1
 +
 +
Vzor tikače nastaveného na jednu minutu, kdy owner je zjišťován automaticky ze startovacích recordů:
 +
 +
    # Nastaveni intervalu, kdy budeme tahat za escalator - vystup se nikam neuklada
 +
    */1 * * * * root wget -O - 'https://app.clever.cz/ctt/escalation' > /dev/null 2>&1
 +
 +
 +
''Pozor, na konci scriptu musí být jeden odENTERovaný řádek''
 +
 +
===Žolíky===
===Žolíky===

Revision as of 15:34, 28 March 2022

Contents

Eskalátor

Eskalátor voláme na adrese server/ctt/escalation

možné url parametry: /escalation/?

   hash=<string>	=> hash pouze pro jednoho konkrétního ownera, povinný u instalací, kde není autentifikace přes UserManagement 2
   recordid=<string>	=> ID konkrétního intervalu, který bude eskalátor kontrolovat (nebude projíždět všechny otevřené intervaly)
   again=<1|0>		=> eskalátor se bude znovu ptát CLEy na pravidla, pokud nebyla vrácena správná (např. error), správně se musí vrátit objekt (i kdyby prázdný) - defaultně again=1

CRON

Cesta ke cronu, pokud chceme nastavit např. minutový tikač:

   /etc/cron.d/ctt-escalation (nebo jiný název)
soubor ctt-escalation

Vzor tikače nastaveného na jednu minutu pro konkrétního ownera:

   # Nastaveni intervalu, kdy budeme tahat za escalator - vystup se nikam neuklada
   */1 * * * * root wget -O - 'https://app.clever.cz/ctt/escalation?hash=8849d073-1eee-11eb-b7d0-05ed861d1beb' > /dev/null 2>&1

Vzor tikače nastaveného na jednu minutu, kdy owner je zjišťován automaticky ze startovacích recordů:

   # Nastaveni intervalu, kdy budeme tahat za escalator - vystup se nikam neuklada
   */1 * * * * root wget -O - 'https://app.clever.cz/ctt/escalation' > /dev/null 2>&1


Pozor, na konci scriptu musí být jeden odENTERovaný řádek


Žolíky

Zadáváme přímo do textu v této formě: User login on server <%= ctt.record.data.server %> was detected.

ctt.interval.
   id
   uuid
   interval_definition_name
   start_event_id
   id_id
   value
ctt.sensor.
   sender_id
   sensor_id
   sensor_type
   group_name
   group_order
   start_value
   sensor_name
   color
   machine
   workplace
   workplace_name
   line
   project
   place
   data
ctt.record.
   id
   chart_time
   chart_value
   unit
   value_type
   sender_id
   sensor_id
   delivered_time
   subject_id
   subject_class_id
   subject_class_name
   author
   data

Klíč data obsahuje strukturu json dalších údajů, které nese event, který vyvolal změnu intervalu. Pro různé eventy se tento obsah liší. Pak použijeme například takto <%= ctt.record.data.server %>

ctt.definition.
   timeout_days,
   timeout_sensor
ctt.config.server.
    appUrl,
    publicAppUrl,
    sentEmailURI,
    sentSmsURI,
    cleaUrl,
    cttRecUrl,
    pathCtt

Staré žolíky

Používáme ve starších verzích CTT (zatím zachována jejich funkčnost i v nových verzích)

Info z CTT recordu a intervalu
    $lineName
    $workplaceName
    $subjectId
    $eventTime
Info z CLEA eventu
    $note
    $xType
    $xName
    $revision
    $diff
    $publishedBy
    $created
    $workplaces
    
    $click (odkaz na schvalování v CLEE)
Info z CTT eventů - podle obsahu datových pytlíků (k dispozici dosud)
    $message
    $stackSizeAlarm
    $stackSizeWarning
    $stackSize
    $kernelPort
    $kernelHostname
    $cttClick (odkaz na přebírání a ukončování požadavků - asi jen v Ivecu)

Příklad

Předmět zprávy:

     User login (<%= ctt.record.data.loginName %> from <%= ctt.record.data.hostIp %>) on server <%= ctt.record.data.server %> - request for reason

Tělo zprávy:

      User login on server <%= ctt.record.data.server %> was detected.
      User:\t\t<%= ctt.record.data.loginName %>
      Source IP:\t<%= ctt.record.data.hostIp %>
      Login:\t\t<%= Date.parse("yyyy-MM-dd'T'HH:mm:ss.SSS",ctt.record.data.firstSessionLoginTime).format('yyyy-MM-dd HH:mm:ss') %> (<%= Date.parse("yyyy-MM-dd'T'HH:mm:ss.SSSXXX",ctt.record.data.firstSessionLoginTime).format('yyyy-MM-dd HH:mm:ss') %> CET)
      Logout:\t\t<%= Date.parse("yyyy-MM-dd'T'HH:mm:ss.SSS",ctt.record.data.serverEventTime).format('yyyy-MM-dd HH:mm:ss') %> (<%= Date.parse("yyyy-MM-dd'T'HH:mm:ss.SSSXXX",ctt.record.data.serverEventTime).format('yyyy-MM-dd HH:mm:ss') %> CET)
      Please, complete the reason on a form here:  <%= ctt.config.server.publicAppUrl %>out.html?v=user_logout&id=<%= ctt.interval.uuid %>

Formátování data a času

např. ctt.record.data.firstSessionLoginTime = "2020-11-05T12:12:03.000+01:00"

      <%= Date.parse("yyyy-MM-dd'T'HH:mm:ss.SSS",ctt.record.data.firstSessionLoginTime).format('yyyy-MM-dd HH:mm:ss') %>
      <%= Date.parse("yyyy-MM-dd'T'HH:mm:ss.SSSXXX",ctt.record.data.firstSessionLoginTime).format('yyyy-MM-dd HH:mm:ss') %> CET

např. ctt.record.data.create = 1.619013617E12

      <%= new Date(ctt.record.data.created.toLong()).format("yyyy-MM-dd HH:mm:ss") %>
Personal tools