amarao (amarao_san) wrote,
amarao
amarao_san

плоды архитектуры в comfort zone

Внезапно обнаружилось, что у меня баг в ТЗ к скрипту - при аплоаде у нас event log общий, а у каждого сервера свой комплект данных. Надо обрабатывать event лог как общий, но данные по серверам обрабатывать раздельно...

Казалось, бы, ужас.

Но...

git diff -- files/upload_to_influx.py|egrep '(^[-\+].+)'|wc -l
12

(Это я продолжаю сам себя хвалить).
-def get_log_name(scenario, event_log_name, type):
+def get_log_name(server, scenario, event_log_name, type):
     dir = os.path.split(event_log_name)[0]
-    return os.path.join(dir, '%s_%s.log' % (scenario, type))
+    return os.path.join(dir, '%s/%s_%s.log' % (server, scenario, type))
 
 
 def process_logs(event_log, event_log_name):
@@ -117,21 +117,21 @@ def process_logs(event_log, event_log_name):
     for observer in get_observers(event_log):
         time_offset = get_observer_time_offset(observer, event_log)
         yield process_log(
-            get_log_name(scenario, event_log_name, 'lat'),
+            get_log_name(observer, scenario, event_log_name, 'lat'),
             'latency',
             observer,
             scenario,
             time_offset
         )
         yield process_log(
-            get_log_name(scenario, event_log_name, 'iops'),
+            get_log_name(observer, scenario, event_log_name, 'iops'),
             'iops',
             observer,
             scenario,
             time_offset
         )
         yield process_log(
-            get_log_name(scenario, event_log_name, 'bw'),
+            get_log_name(observer, scenario, event_log_name, 'bw'),

(без учёта изменения тестов, разумеется)

Сейчас есть ещё один толстый багофич ползёт, оказывается, в fio можно абсолютные timestamps записывать, плюс надо выравнивать данные по заданному start_time. Надеюсь, пара десяток строчек.
Subscribe

  • systemd-networkd, netlink и arp флуд

    Нереально странный баг пофикшен с помощью eBPF затычки. Для меня большой неожиданностью является реакция на него.…

  • Rust soundness

    Каждый раз, когда я сталкиваюсь с маленькими "но" в Rust'е, это ощущение тщательной продуманности. Например, простейшие fold-функции для итераторов:…

  • still_ntp

    В ходе локального мозгового штурма у меня родилась суперидея. Надо написать ntp сервер, который может отдавать указанную дату. Т.е. сказали при…

  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments