diff --git a/gazer/config.py b/gazer/config.py index 9ff1ae8..19f74fc 100644 --- a/gazer/config.py +++ b/gazer/config.py @@ -14,10 +14,13 @@ def __init__(self, **kargs): self.read_config() def read_config(self): - with open(r'config/config.yaml') as file: - self.config = yaml.load(file, Loader=yaml.FullLoader) - self.config = dict(filter(lambda elem: elem[1]['isService'] or elem[1]['node'] == NODE_NAME, - self.config.items())) + try: + with open(r'config/config.yaml') as file: + self.config = yaml.load(file, Loader=yaml.FullLoader) + self.config = dict(filter(lambda elem: elem[1]['isService'] or elem[1]['node'] == NODE_NAME, + self.config.items())) + except: + self.config = None def process_IN_CLOSE_WRITE(self, evt): self.read_config() diff --git a/gazer/console.py b/gazer/console.py index 3badac2..d7c3069 100644 --- a/gazer/console.py +++ b/gazer/console.py @@ -45,8 +45,8 @@ def draw_menu(stdscr: curses.window): statusbarstr = "Press 'q' to exit | STATUS BAR | Pos: {}, {}".format(cursor_x, cursor_y) stdscr.addstr(0, 0, "Requests", curses.color_pair(1)) - stdscr.addstr(2, 0, gazer.request_log_text(), curses.color_pair(1)) - stdscr.addstr(15, 0, gazer.syn_backlog_text(), curses.color_pair(1)) + stdscr.addstr(2, 0, "f\n"*25, curses.color_pair(1)) + stdscr.addstr(28, 0, gazer.syn_backlog_text(), curses.color_pair(1)) # Render status bar stdscr.attron(curses.color_pair(3)) diff --git a/gazer/deployment.yaml b/gazer/deployment.yaml index c90bc20..3266dd1 100644 --- a/gazer/deployment.yaml +++ b/gazer/deployment.yaml @@ -1,15 +1,15 @@ -apiVersion: v1 -kind: Namespace -metadata: - name: lazy-koala ---- -apiVersion: v1 -kind: ConfigMap -metadata: - name: gazer-config - namespace: lazy-koala -data: - config.yaml: | +#apiVersion: v1 +#kind: Namespace +#metadata: +# name: lazy-koala +#--- +#apiVersion: v1 +#kind: ConfigMap +#metadata: +# name: gazer-config +# namespace: lazy-koala +#data: +# config.yaml: | --- apiVersion: apps/v1 kind: DaemonSet @@ -80,7 +80,7 @@ spec: readOnly: true hostNetwork: true hostPID: true - serviceAccountName: lazy-koala + serviceAccountName: gazer initContainers: - name: init-headers image: ghcr.io/mrsupiri/lazy-koala/gazer:init @@ -149,7 +149,7 @@ spec: labels: app: prometheus spec: - serviceAccountName: lazy-koala + serviceAccountName: gazer containers: - name: prometheus image: prom/prometheus:v2.33.1 @@ -168,7 +168,7 @@ spec: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: - name: lazy-koala + name: gazer rules: - apiGroups: - "" @@ -209,20 +209,20 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: - name: lazy-koala + name: gazer roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole - name: lazy-koala + name: gazer subjects: - kind: ServiceAccount - name: lazy-koala + name: gazer namespace: lazy-koala --- apiVersion: v1 kind: ServiceAccount metadata: - name: lazy-koala + name: gazer namespace: lazy-koala --- apiVersion: v1 diff --git a/gazer/gazer.py b/gazer/gazer.py index 1d67514..edd1fdf 100644 --- a/gazer/gazer.py +++ b/gazer/gazer.py @@ -79,9 +79,9 @@ def ipv4_request_event(self, cpu, data, size): rpod = config_watcher.config[event['RADDR']] request_received.labels(rpod['namespace'], rpod['serviceName'], pod['name']).inc() - if self.console_mode: - self.request_df = self.request_df.append(event, ignore_index=True) - self.request_df = self.request_df[-10:] + if self.console_mode: + self.request_df = self.request_df.append(event, ignore_index=True) + self.request_df = self.request_df[-25:] def poll_requests(self): while True: @@ -122,15 +122,15 @@ def poll_syn_backlog(self): backlog.labels(pod['namespace'], pod['serviceName'], pod['name'], row[0].slot).set(row[1].value) - if self.console_mode: - self.syn_df = self.syn_df.append({ - "backlog": row[0].backlog, - "slot": row[0].slot, - "saddr": inet_ntop(AF_INET, pack("I", row[0].saddr)), - "lport": row[0].lport, - "value": row[1].value, - "outdated": False, - }, ignore_index=True) + if self.console_mode: + self.syn_df = self.syn_df.append({ + "backlog": row[0].backlog, + "slot": row[0].slot, + "saddr": inet_ntop(AF_INET, pack("I", row[0].saddr)), + "lport": row[0].lport, + "value": row[1].value, + "outdated": False, + }, ignore_index=True) self.syn_backlog_buffer.clear() time.sleep(5) @@ -159,7 +159,7 @@ def syn_backlog_text(self): def request_log_text(self): if self.request_df.empty: return "" - return self.request_df.tail(10).__str__() + return self.request_df.tail(25).__str__() def poll_data_in_bg(self): poll_syn_backlog = threading.Thread(target=self.poll_syn_backlog, args=())