GitHub API — полезные примеры curl запросов с releases API

Очередная подборка полезных curl запросов для работы с GitHub API: Получить объект release с выбранным tag_name:

Получить uploadUrl для загрузки нового asset в данный release объект:

Удаление asset из release:

Для работы bash снипетов необходимо установить расширение…
Read more

Unit тесты для zap логгера в Golang

Zap — популярная в Go лог система, написанная убером. Задача, которая однажды встала передо мной — как проверить что все нужные сообщения логгера  были вызваны в коде? Для этого я нашел решение как сам zap тестирует свою логику — при…
Read more

Prometheus middleware для Chi

Для вывода Prometheus метрик с роутера Chi нет официального Middleware. Поэтому установим расширение 766b/chi-prometheus:

Далее импортируем promhttp:

И регистрируем HTTP handler:

И в принципе всё. Теперь все роуты будут проходить через chiprometheus и все данные роутера будут…
Read more

Bitcoin alert — добавлена команда CURRENT

При помощи Telegram бота Bitcoin-Alert можно получать актуальные изменения минимального-максимального курса криптовалют в течение определенного промежутка времени. В Telegram бот была добавлена команда CURRENT для получения актуального курса: > BTC CURRENT  < Current ticker: 6775.246094 Бот поддерживает Bitcoin, Litecoin, Ethereum.

Golang: FileServer для go-chi

Пример работы файлового сервера для go-chi:

До начала работы нужно задать root — корневую папку для работы файлового сервера. Все запросы начинающиеся на /* будут идти на заданный файловый сервер. Возможно также задать только определенный роут, допустим /static/*

Bitcoin alert — Telegram бот для получения уведомлений по изменению цен BTC, LTC, ETH

bitcoin-alert.sassoft.ru — новый сервис для доставки уведомлений по изменению цен крупнейших по капитализации криптовалют: Bitcoin, Litecoin, Ethereum. Для получения уведомлений достаточно просто установить бота на свой аккаунт и выбрать нужную команду: Например, хотим получать BTC сигналы: И все! Бот будет…
Read more

Сниппет: Отправка POST json в Golang

Сниппет для POST отправки JSON string:

 

Prometheus — установка для небольшого Kubernetes кластера

Простая инструкция как установить и начать мониторинг своих сервисов для небольшого Kubernetes кластера. В данном примере мы не будем использовать Prometheus оператор, но для сложных динамичных систем и огромного количества сервисов использование оператора просто необходимо. Для начала подготовим Prometheus.yml файл:…
Read more

Отправка Telegram сообщений с Go

При помощи библиотеки go-telegram-bot-api достаточно легко написать свою программу на Go для отправки сообщений в Telegram. Библиотека имеет множество реализованных методов для работы c Telegram API — отправка сообщений, загрузка изображений и медиафайлов, ответ на сообщения в группах и отслеживание…
Read more

Автообновление Go проектов при помощи github-selfupdate

go-github-selfupdate это довольно хорошая реализация поиска и обновлений новых версий приложения если вы используете GitHub в качестве хостинга релизов. Библиотека поддерживает поиск новых semver релизов через GiHub releases. Подключить поиск и загрузку новых обновлений достаточно просто: Ваш проект должен находиться на…
Read more