Архів категорії: Go

Golang: запис логів AWS Loab Balancer до VictoriaLogs

26 Листопада 2025
 

 Наступна задача, яку хочеться вирішити з Go – це написати власний logs collector для збору логів AWS Load Balancer з AWS S3 і запису їх до VictoriaLogs. Це, звісно, можна було б вирішити просто з Vector.dev, як це робив для AWS VPC Flow Logs, див. Vector.dev: знайомство, логи з AWS S3 та інтеграція з VictoriaLogs,… Читати далі »

Golang: інтерфейси, типи та методи на прикладі io.Copy()

22 Листопада 2025
 

 Почав писати log collector з S3 до VictoriaLogs з використанням AWS GO SDK, і в коді достатньо багато використовуються різні Input/Ouput операції, бо треба отримати лог, розпарсити, записати дані. В попередньому пості по інтерфейсам – Golang: interfaces – “магія” виклику методів через інтерфейси – вже трохи торкався теми того, що таке інтерфейси і як саме… Читати далі »

Golang: створення OpenAI Exporter для VictoriaMetrics

17 Листопада 2025
 

 Є задачка на моніторинг костів на OpenAI – бачити скільки за добу витрачено кожним проектом, і слати алерти в Slack, коли витрати завеликі. Потикав кілька готових експортерів для OpenAI, але не побачив там метрик саме по костам, тому просто напишемо свій. Писати будемо на Golang, ідея дуже проста – з OpenAI API отримуємо дані, генеруємо… Читати далі »

Golang: interfaces – “магія” виклику методів через інтерфейси

11 Листопада 2025
 

 Інтерфейси в Go дозволяють описати доступ до даних або методів без створення самих реалізацій в цих інтерфейсах. Таким чином ми створюємо “загальну шину”, яку далі можемо використовувати для “підключення” зовнішніх “систем”. Тобто інтерфейс – це абстракція, яка описує доступ до іншого типу, але конкретна реалізація цієї поведінки вже буде залежати від того, що саме ми… Читати далі »

Kubernetes: що таке Kubernetes Operator та CustomResourceDefinition

18 Липня 2025
 

 Мабуть, всі користувались операторами в Kubernetes, наприклад – PostgreSQL operator, VictoriaMetircs Operator. Але що там відбувається “під капотом”? Як і до чого застосовуються CustomResourceDefinition (CRD), і що таке, власне “оператор”? І, врешті решт – в чому різниця між “Kubernetes Operator” та “Kubernetes Controller”? В попередній частині – Kubernetes: Kubernetes API, API Groups, CRD та etcd… Читати далі »