Intro Heritrix는 웹 아카이빙을 위해 만들어진 웹 크롤러입니다. 2004년 미국의 Internet Archive 의해 최초 공개되었으며, 자바로 작성된 오픈소스입니다. 주요 인터페이스는 웹 브라우저를 사용하여 접근할 수 있으며, 크롤링을 시작하는 데 커맨드 라인으로도 조작할 수 있습니다. 또한, robots.txt 규칙을 존중합니다. 전체 소스코드는 https://github.com/internetarchive/heritrix3 에서 확인할 수 있습니다. Internet Archive에서 아카이브 하는 사이트가 얼마나 많은지, 무려 8,060억개 이상의 웹 페이지를 조회할 수 있다고 합니다. 궁금해서 제 블로그 주소를 입력 해서 확인을 해 보았더니 아래 보이는 것 처럼 처음 작성하기 시작한 2..
Development/Develop Tools 33
Intro Liquibase를 사용하여 데이터베이스 스키마를 관리하며, 테스트용 데이터베이스 생성에 어려움을 겪었습니다. 현재는 여러 외부 환경을 구축한 후 통합 테스트를 진행하고 있지만, 나중에 CI/CD를 고려할 때는 외부 환경에 의존하지 않고 독립적으로 테스트가 가능하도록 만들고 싶었습니다. 검색 엔진인 Apache Solr는 Mocking을 하고, Redis는 인메모리로 사용할 수 있어서 테스트에서는 그걸 사용하게끔 하고 나니 이제 데이터베이스만 남아있었거든요. 제가 토이프로젝트등에서 하고 있는 것 처럼 H2 인메모리 DB를 사용하기로 했습니다. 그걸위해 먼저 PostgreSQL로 되어 있는 DB를 테스트에서는 H2로 마이그레이션 해야합니다. 하지만 운영 환경에서의 Liquibase를 그대로 실행..
Intro 개발중인 토이프로젝트의 css가 아이폰으로 확인 했을 때, 의도치 않은 모습으로 보였습니다. 버튼 및 input의 텍스트 색상이 자꾸 파랑색으로 표시되는데 개발자 모드로 띄워 놓고 확인을 하고 싶었습니다. macOS 의 Safari로 띄워놓고 같은 사이즈로 줄여도 같은상황이 재현되지 않는걸 보면 iOS Safari의 특징 같았습니다. 사파리 페이지를 테스트 하다 보면 스택오버플로에서 흔히들 말하는 Safari is new IE 라는 말에 뭔가 수긍되는 경우도 종종 있긴 합니다. iPhone Safari 디버그 iPhone 에서 Web Inspector 켜기 설정 > Safari > Advanced > Web Inspector 순서로 들어가서 설정을 켜 줍니다. 이후 이제 맥북에서 Safari를..
Intro 정책상 모든 코드에 라이센스 정보를 입력 해야 하는데, 이게 여간 귀찮은 일이 아닙니다. 심지어 종종 까먹고 빼먹는 일도 있기 때문에 한번씩 모든 코드를 검사해서 일괄적으로 등록 하곤 했었는데 아에 파일 생성시 자동으로 입력 되도록 등록을 해 보려고 합니다. How to 다행히도, 인텔리제이에서 제공하는 File and Code Template 기능을 활용 하면 어렵지 않게 설정이 가능합니다. Setting > Editor > File and Code Template 로 들어갑니다. 그러면 위와 같은 화면이 나오는데, 가장 먼저 상단의 Scheme을 선택해서 File template이 적용될 스코프를 선택 합니다. Default: 전체 어플리케이션에 설정합니다. 현재 사용하는 인텔리제이를 통해..
Intro 프로젝트에서 국제화 작업을 진행이 대부분 마무리되어, 이제는 모든 뷰단에서 완전하게 하드코딩된 한글 메시지가 제거가 되었는지 확인이 필요 했습니다. 눈에 보이는 페이지를 하나 씩 일일이 찾아서 변경을 했지만, 거의 완료가 되고 나서도 특정 이벤트에만 등장하는 숨겨진 텍스트들이 꽤나 있었습니다. 이때는 정규식 표현을 활용하여 손쉽게 모든 파일에서 한글이 입력된 부분만 찾아낼 수 있습니다. 한글 찾기 파일에서 찾기 Shift 키를 연속으로 두 번 누르고 Find in Files 를 검색 하시면, 단축키를 찾아 낼 수 있습니다. Linux / Windows 에서는 Ctrl+Shift+F 키 이며, Mac 에서는 Ctrl 키 대신 커맨드 키가 들어갑니다. 해당 단축키를 입력 해 보면 위에 보이는 것과..