Grafana 모니터링중 이상 발생시 슬랙으로 알림 보내기

Intro Oracle Cloud는 1기가 메모리 인스턴스 무료로 제공한다. 그것도 무려 2개나. 몇년간 여러가지 클라우드 옵션들을 찾아봤지만 이정도로 파격적인 조건은 전혀 찾을 수 없었다. 그래서 그 두개의 인스턴스를 정말 요긴하게 잘 사용하고 있다. 고정 아이피도 제공해주기 때문에 토이프로젝트 정도는 물론이요, 트래픽이 많지 않다면 작은 서비스도 운영할 수 있을 것이다. 이정도 스펙이면 네이버 클라우드 기준으로도 월 3만원 이상 과금을 해야 하는데 공짜로 쓸 수 있으니 정말 좋다. 하지만 망각하고 있었던게 있으니, 그들의 이름은 악명높은 오라클 이였다. 난 이제 2년정도 사용했는데 여태 잠잠하더니 슬슬 점유율을 끌어 높이기 위해 썼던 그들 스스로의 묘책을 거둘 셈으로 보인다. 요즘따라 툭하면 이메일을..

Development/DevOps 2023.06.07
골치아픈 공공데이터포털 serviceKey 인코딩 문제

Intro 처음 겪는 일은 아니지만 공공 데이터 포털 API를 쓸 때마다 고생을 해서 이번에 글로 정리해두려고 한다. 공공 데이터포털은 각 공공기관이 보유하고 있는 여러가지 다양한 공공 데이터들을 하나의 통합 창구에서 편리하게 사용할 수 있도록 만들어진, 정부에서 운영하는 서비스다. 제공하는 정보가 정말 다양하고 여러가지 유용한 정보가 있으며 무료로 사용할 수 있기 때문에 개발자라면 한번쯤은 사용 해 보았을 것이다. 아래 보이는 것 처럼, 공공 데이터 포털에서는 개인 API 인증키를 Encode / Decode 된 두가지 버전으로 제공한다. 여기까지는 좋다. 사용자가 편의에 따라서 URI 인코딩 하지 않고 인코딩 된 키를 바로 복사해서 써도 되고, 그게 아니면 Decode 된 키를 가지고 각자 알아서 요..

Development/Daily Error 2023.05.28
Let's encrypt로 SSL 인증서 발급받기

Intro 기존에 ZeroSSL을 활용해서 SSL을 발급받았는데, 90일마다 제법 번거로운 과정을 통해 재발급을 하는건 그래도 견딜 수 있었지만, 다른 도메인 포함 총 3번의 90-Day Certificates 발급을 하고 나니 이제부터는 돈내고 인증서를 발급받으라고 한다. 앞으로 zeroSSL을 쓸 일은 없겠다. 다른 무료 인증서 발급 기관을 찾아보다보니 Let's Encrypt가 사용방법도 편하고 무엇보다 비영리 단체이기 때문에 앞서 경험했던 것과 비슷한 상황을 걱정할 필요도 없고 갱신 방법이 간단하다는 점에서 선택하게 되었다. 심지어 대부분의 문서가 한국어로 번역도 잘 되어 있기 때문에 누구나 손쉽게 사용할 수 있을거라 생각한다. 발급 https://letsencrypt.org/getting..

Development/DevOps 2023.05.20
2의 10000제곱을 MOD로 나눈 나머지 구하기

Intro Leetcode 1498번 문제 Number of Subsequences That Satisfy the Given Sum Condition를 풀이하는데, 처음에는 Brute force로 풀다 안되어서 슬라이딩 윈도우 방식으로 시도를 해 보았습니다. 그런데 속도를 개선하고 보니 다른 문제가 있었습니다. 조건에 따르면 최대 2의 10000 제곱까지도 계산을 해야 하는데, 이 크기가 만만치 않습니다. 2의 1만제곱이 얼마나 큰지 long타입은 커녕 double로도 담을 수 없습니다. Double.MAX_VALUE 를 확인 해 보면 2의 1023 제곱까지는 담기는데, 1024제곱부터는 담기지 않습니다. 코드를 작성해서 확인 해보면 아래 보이는 것 처럼, 범위 밖의 숫자는 Infinity로 나옵니다. ..

Development/Fundamentals 2023.05.06
Heritrix를 사용한 웹 아카이브

Intro Heritrix는 웹 아카이빙을 위해 만들어진 웹 크롤러입니다. 2004년 미국의 Internet Archive 의해 최초 공개되었으며, 자바로 작성된 오픈소스입니다. 주요 인터페이스는 웹 브라우저를 사용하여 접근할 수 있으며, 크롤링을 시작하는 데 커맨드 라인으로도 조작할 수 있습니다. 또한, robots.txt 규칙을 존중합니다. 전체 소스코드는 https://github.com/internetarchive/heritrix3 에서 확인할 수 있습니다. Internet Archive에서 아카이브 하는 사이트가 얼마나 많은지, 무려 8,060억개 이상의 웹 페이지를 조회할 수 있다고 합니다. 궁금해서 제 블로그 주소를 입력 해서 확인을 해 보았더니 아래 보이는 것 처럼 처음 작성하기 시작한 2..

Development/Develop Tools 2023.04.30