Changes between Version 2 and Version 3 of UseCaseUC1PrototypeImplementation


Ignore:
Timestamp:
08/23/26 19:49:54 (4 days ago)
Author:
231118
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • UseCaseUC1PrototypeImplementation

    v2 v3  
    2121[[Image(UC1_step1.png,700px)]]
    2222
    23 
    2423'''Систем'''
    2524
     
    2928
    3029{{{
    31 SELECT env_name,
    32        tenant_id
     30SELECT env_name, tenant_id
    3331FROM env_tokens
    3432WHERE token = ?
    35 AND (expires_at IS NULL
    36      OR expires_at > datetime('now'))
     33  AND (expires_at IS NULL OR expires_at > datetime('now'))
    3734LIMIT 1;
    3835}}}
    3936
    40 
    41 === Чекор 2
     37=== Чекор 2 ===
    4238
    4339Системот проверува дали компјутерот веќе постои.
    44 
    4540
    4641'''SQL'''
     
    4944SELECT id
    5045FROM computers
    51 WHERE tenant_id = ?
    52 AND name = ?
     46WHERE tenant_id = ? AND name = ?
    5347LIMIT 1;
    5448}}}
    5549
    56 
    57 
    58 === Чекор 3
     50=== Чекор 3 ===
    5951
    6052Доколку компјутерот веќе постои, се ажурираат неговите информации.
     
    6456{{{
    6557UPDATE computers
    66 SET
    67     user=?,
    68     ip=?,
    69     os=?,
    70     last_seen=?,
    71     sysmon_available=?,
    72     env_name=?
    73 WHERE
    74     id=?
    75 AND
    76     tenant_id=?;
     58SET user=?, ip=?, os=?, last_seen=?, sysmon_available=?, env_name=?
     59WHERE id=? AND tenant_id=?;
    7760}}}
    7861
     
    8366{{{
    8467INSERT INTO computers
    85 (
    86 tenant_id,
    87 env_name,
    88 name,
    89 user,
    90 ip,
    91 os,
    92 first_seen,
    93 last_seen,
    94 sysmon_available
    95 )
    96 VALUES
    97 (
    98 ?,
    99 ?,
    100 ?,
    101 ?,
    102 ?,
    103 ?,
    104 ?,
    105 ?,
    106 ?
    107 );
     68(tenant_id, env_name, name, user, ip, os, first_seen, last_seen, sysmon_available)
     69VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?);
    10870}}}
    10971
     72=== Чекор 4 ===
    11073
    111 
    112 === Чекор 4
    113 
    114 Системот ги зачувува моменталните перформанси.
     74Системот ги зачувува перформансите. Најпрво ги освежува тековните метрики (snapshot што се препишува), а потоа додава запис во историјата.
    11575
    11676'''SQL'''
    11777
    11878{{{
     79DELETE FROM computer_history_current WHERE computer_id=?;
     80
     81INSERT INTO computer_history_current
     82(computer_id, cpu_usage, ram_usage, disk_usage, network_sent_mb, network_recv_mb, timestamp)
     83VALUES (?, ?, ?, ?, ?, ?, ?);
     84
    11985INSERT INTO computer_history
    120 (
    121 computer_id,
    122 cpu_usage,
    123 ram_usage,
    124 disk_usage,
    125 network_sent_mb,
    126 network_recv_mb,
    127 timestamp
    128 )
    129 VALUES
    130 (
    131 ?,
    132 ?,
    133 ?,
    134 ?,
    135 ?,
    136 ?,
    137 ?
    138 );
     86(computer_id, cpu_usage, ram_usage, disk_usage, network_sent_mb, network_recv_mb, timestamp)
     87VALUES (?, ?, ?, ?, ?, ?, ?);
    13988}}}
    14089
     90=== Чекор 5 ===
    14191
    142 === Чекор 5
    143 
    144 Системот ги освежува тековните процеси.
    145 
    146 Најпрво ги брише старите.
     92Системот ги освежува тековните процеси. Најпрво ги брише старите, потоа ги внесува новите.
    14793
    14894'''SQL'''
    14995
    15096{{{
    151 DELETE
    152 FROM computer_processes_current
    153 WHERE computer_id=?;
     97DELETE FROM computer_processes_current WHERE computer_id=?;
     98
     99INSERT INTO computer_processes_current
     100(computer_id, pid, name, cpu_percent, memory_mb, username, cmdline, timestamp)
     101VALUES (?, ?, ?, ?, ?, ?, ?, ?);
    154102}}}
    155103
    156 Потоа ги внесува новите.
     104=== Чекор 6 ===
    157105
    158 '''SQL'''
    159 
    160 {{{
    161 INSERT INTO computer_processes_current
    162 (
    163 computer_id,
    164 pid,
    165 name,
    166 cpu_percent,
    167 memory_mb,
    168 username,
    169 cmdline,
    170 timestamp
    171 )
    172 VALUES
    173 (
    174 ?,
    175 ?,
    176 ?,
    177 ?,
    178 ?,
    179 ?,
    180 ?,
    181 ?
    182 );
    183 }}}
    184 
    185 
    186 === Чекор 6
    187 
    188 Доколку е овозможено чување на историја, процесите се зачувуваат и во history.
     106Доколку е овозможено чување историја (env_settings.save_process_history), процесите се зачувуваат и во history.
    189107
    190108'''SQL'''
     
    192110{{{
    193111INSERT INTO computer_processes_history
    194 (
    195 computer_id,
    196 pid,
    197 name,
    198 cpu_percent,
    199 memory_mb,
    200 username,
    201 cmdline,
    202 timestamp
    203 )
    204 VALUES
    205 (
    206 ?,
    207 ?,
    208 ?,
    209 ?,
    210 ?,
    211 ?,
    212 ?,
    213 ?
    214 );
     112(computer_id, pid, name, cpu_percent, memory_mb, username, cmdline, timestamp)
     113VALUES (?, ?, ?, ?, ?, ?, ?, ?);
    215114}}}
    216115
    217 === Чекор 7
     116=== Чекор 7 ===
    218117
    219118Системот ги зачувува Sysmon настаните.
     
    223122{{{
    224123INSERT INTO sysmon_events
    225 (
    226 computer_id,
    227 event_id,
    228 event_type,
    229 message,
    230 timestamp,
    231 details
    232 )
    233 VALUES
    234 (
    235 ?,
    236 ?,
    237 ?,
    238 ?,
    239 ?,
    240 ?
    241 );
     124(computer_id, event_id, event_type, message, timestamp, details)
     125VALUES (?, ?, ?, ?, ?, ?);
    242126}}}
    243127
     128=== Чекор 8 ===
    244129
    245 === Чекор 8
    246 
    247 Системот ги зачувува мрежните конекции.
     130Системот ги зачувува мрежните конекции — тековен snapshot, и историја доколку е овозможено (env_settings.save_network_history).
    248131
    249132'''SQL'''
    250133
    251134{{{
     135DELETE FROM network_connections_current WHERE computer_id=?;
     136
     137INSERT INTO network_connections_current
     138(computer_id, pid, local_address, remote_address, status, process_name, timestamp)
     139VALUES (?, ?, ?, ?, ?, ?, ?);
     140
    252141INSERT INTO network_connections
    253 (
    254 computer_id,
    255 pid,
    256 local_address,
    257 remote_address,
    258 status,
    259 process_name,
    260 timestamp
    261 )
    262 VALUES
    263 (
    264 ?,
    265 ?,
    266 ?,
    267 ?,
    268 ?,
    269 ?,
    270 ?
    271 );
     142(computer_id, pid, local_address, remote_address, status, process_name, timestamp)
     143VALUES (?, ?, ?, ?, ?, ?, ?);
    272144}}}
    273145
    274 
    275 === Чекор 9
     146=== Чекор 9 ===
    276147
    277148Системот успешно ја обработува испратената информација и враќа успешен одговор.