분류 전체보기 68

[Github Action] AI로 PR자동화 하고, Jira 에 Test사항 정리하기

[도입 이유]기존 개발팀의 PR 및 Jira 코멘트 등록은 각 인원별로 그 자동화 정도가 다른 실정입니다.이로 인해, 개발 - 테스트 간 요구사항 및 테스트 필요 사항에 대한 부분이 미흡했습니다.이런 이유로 공통된 PR Rule을 가지고,해당 PR Rule을 기반으로 작성된 내용을 Jira에 자동화를 시키면개발인력도 Jira에 신경쓰는 시간이 줄어들 것이고, 테스트 인력도 이 이슈에 대한 추가적인 내용을 파악하기 위해 개발자와 추가적인 소통이 일어나는 것을 막을 수 있으리라 기대했습니다.[작업 목표]IDE Commit/PR 자동화PR review 완료 후 github action 트리거github action에서 Jira 접근PR 내용에서 댓글에 작성할 내용만 필터필터된 내용을 댓글에 작성작성된 내용을 ..

[Xtrabackup] DB 백업본으로 DB 데이터 유실 확인하기 - Docker활용

본 글은 Xtrabackup 백업 파일을 Docker를 활용해 복원하고, 데이터 유실 여부를 확인한 과정을 다룹니다.오늘은 DB의 데이터 유실 의심 상황에서 백업 파일을 복원하여 검증한 과정을 공유하려고 합니다.[문제 발생]운영 중인 사내 서비스에서 특정 시점 이후 데이터가 유실된 것으로 의심되는 상황이 발생했습니다.다행히 Xtrabackup으로 생성한 백업 파일이 있었고(매일 정오 backup), 이를 복원하여 현재 DB와 비교해볼 필요가 있었습니다.당시 상황:백업 파일: Xtrabackup 8.0.35로 생성된 물리 백업 (약 32GB)원본 DB: MySQL 8.0.36 (Linux 서버)Ncloud의 Cloud DB서비스 환경SSH 접근: 불가능 (DB 접속만 가능)이 시점에서 정리할 수 있는 부분..

[AI code review] AI 코드리뷰 도입기 (with Gemini)

본 글은 Gemini를 통한 AI code review를 다룹니다.안녕하세요. 오늘은 AI Code Review 팀 내 도입기를 작성하려고 합니다. [도입 배경]요즘은 코드리뷰 문화가 상당히 보편적으로 널리 퍼진것 같습니다. 소프트웨어의 품질 상승 뿐만 아니라 개발자 개인의 성장에도 도움이 많이 되는 것 같더라구요. 그렇게 코드리뷰는 장점만 가지고있는 것 같지만 실상은 조금 다릅니다. 장점- 코드의 품질이 올라간다. (버그가 줄어든다.)- 개발자 개인의 코딩 컨벤션 준수 및 파악하지 못한 예외 케이스들을 확인할 수 있다. - 본인 작업범위 이외의 코드를 파악할 수 있다. 단점- 코드리뷰를 진행하는 시간이 소요된다. (바쁘다면.. Approve 머신 혹은 LGTM머신이 될 수있다.)- PR summary ..

[PM2] Flask 가상환경 구동시 가상환경 Permission Error [errno13]

본 포스트는 Python 가상환경을 이용해 Flask서버를 Pm2 로 구동하던 중 Permission Error 가 발생한 문제에 대해서 다룹니다. [문제 발생]사내에서 운영하던 Data 처리용 서버에서 어느순간 특정 API에 대해 Error가 발생하는 것을 인지했습니다. 에러의 내용인 즉슨별다른 코드 변경없이 구동 되던 Flask 서버에서 PermissionError: [Errno 13] Permission denied: 발생. 자세한 에러로그는 다음과 같이 특정 서비스에서 외부서버의 파일을 다운받아 처리하는 함수에서 발생했습니다. 코드는 다운로드 폴더를 확인하고, 폴더가 존재하면 그곳에 파일을 저장. 존재하지 않는다면 폴더를 생성하는 로직이었습니다. (예시 구현)current_directory = o..

[포터블 모니터] UPERFECT 15.6 포터블 모니터 리뷰

[구매 이유]저는 보통 작업을 맥 미니로 하는데요. 보통은 모니터 두개에 맥미니를 물리는 형태의 데스크 셋업으로 일을 하곤 하는데, 회사에서는 윈도우 노트북도 사용해야 하고 작업으로는 맥미니를 사용하는 탓에 개인 모니터가 부족해졌습니다. 그렇다고 저만 모니터를 더 사용할 수도 없고, 사용하다가 한 모니터의 연결을 윈도우/맥 을 수시로 바꾸기도 귀찮은 상황이었습니다. (물론 HDMI 스위치를 말씀하시는 분들도 계시겠지만 저희는 자율 좌석이라 퇴근시에는 자리를 정리해야 해서 제외하였습니다.)그래서 대책으로 선택한 게 포터블 모니터 였습니다. [구매시 고려 사항]구매시 고려사항으로는 크게외부전원이 필요하지 않을 것 (썬더볼트 혹은 충전을 지원할 것, 소비전력 15W 이하 제품) 14인치보다 화면 크기가 클 것..

내돈내산 리뷰 2025.03.07

[Mysql 8.0] Mysql Lock 확인

간단한 글을 쓰는 것은 지양하려고 했는데, 다른 블로그 글 중에 잘 안맞는 것들이 있어서 조금 끄적거려본다.알기로 5.6 버전과 8.0 버전은 시스템 쿼리의 형태가 조금 다른것으로 안다. (password 컬럼이 사라졌다거나..)이 글은 8.0 기준으로 작성함을 알려드린다. Transaction Lock 확인확인 자체는 아래 명령을 통해 진행하면 된다. SELECT * from information_schema.INNODB_TRX다만 일을 하다보면 이 트랜잭션을 죽여도 되는가 혹은 이 트랜잭션이 어디서 발생했는가를 알아야 하는 경우가 존재한다.SHOW ENGINE INNODB STATUS;이때 이 명령을 통해 락이 어느시점에 어떤데이터에서 발생했는지를 보다 자세히 알 수 있게 해준다. 무턱대고 트랜잭션을..

BE 와 FE 는 어떻게 협업해야 할까.

부제 : 확신을 가지는 개발자가 되고 싶다. 저는 2년차 백엔드 개발자임을 먼저 알리며, 정답을 말하고자 작성하는 글이 아니라 저의 경험을 공유하고자 쓰는 글입니다. 오해 없으시길 바라겠으며, 다른 생각이 있으시다면 언제든 댓글로 의견 나눠주시면 감사하겠습니다. 백엔드와 프론트엔드는 보통 API를 통해 협업을 진행하게 될 텐데요. 보통은 아니, 저희는 api 설계를 진행하고 그 설계내용을 프론트에 전달 한 뒤, 프론트와 백엔드가 그 설계내용을 맞추기 위해 작업을 합니다. 문제가 없이 그 설계내용대로 작업이 진행된다면 서로 의견이 대립할 일 없이 아주 좋은 업무 진행이 되겠지요. 하지만 종종 수정요청이 들어오는 경우가 있었습니다. 저는 대부분 그런 경우 백엔드에서 키 값을 변경하거나, 데이터 구조를 요청에..

[JAXB] XSD to java Code (xsd , java object변환)

항상 블로그는 어렵네요. 단순한 낙서장이 되지않기를 바랍니다.JAXB , XjcJAXB(Java Architecture for XML Binding)는 웹 서비스의 단순화된 개발을 위해 Java 클래스 및 XML 스키마를 매핑하는 쉽고 편리한 방법을 제공하는 Java 기술입니다.JAXB는 본문의 글 처럼 스키마파일을 통해 java object를 생성하기도 하지만 xml 문서를 java object로 변환하는 Marshal그리고 그 반대의 역할을 하는 Unmarshal기능도 지원합니다.일단 JAXB는 JAVA11부터는 JDK에 포함되지 않습니다. 그리고 이 글의 목적인 xsd 변환을 도와주는 도구 xjc 역시 포함되어있지 않습니다. 해결법 본문에서는 첫번째 방법으로 JAVA 17버전 에서 IntelliJ..

회고 (2022 하반기)

[프로젝트를 하면서 느낀 점] 이 회사에서 나는 백엔드 개발자로 Python 과 JS를 사용해 오고 있다. 물론 처음부터 둘 다 하려고 한 건 아니고, 필요에 의해서? 그리고 좀 더 편한 작업을 위해서 사용했다. 연구소 내에서 내가 맡고 있는 작업은 물론 백엔드 작업이지만, 그 중에서도 DB에 저장된 임상 관련 데이터들을 조합, 정제하여 다른 EDC가 읽을 수 있는 xml 형태로 넘겨주는 작업이다. 데이터 구조가 생각보다 복잡했고 data를 합치는 과정에서 중복된 데이터를 제거하거나 common 이 체크된 경우 아예 새로운 data format으로 만드는 등의 작업을 하다 보니 Python이 가장 적합했다. 나는 약 9월 말 부터 Imtrial에 합류하여 두 달 조금 안되는 기간 동안 ODM이라는 데이터..

[개발노트] 터미널 워치페이스 애플워치3 적용기

오랜만에 포스팅입니다! 오늘은 좀 재밌어보이는 깃 레포지토리를 가져와 봤습니다 요거 딱 감성자극하지 않나요? ㅋㅋ 터미널 워치페이스입니다. 레딧에서도 한때 글이 올라왔었네요 https://www.reddit.com/r/AppleWatch/comments/a6td4t/termiwatch_a_terminal_watch_face_for_apple_watch/ 그래서 오늘 포스팅은 요 https://github.com/kuglee/TermiWatch GitHub - kuglee/TermiWatch: Terminal Watch Face for Apple Watch Terminal Watch Face for Apple Watch. Contribute to kuglee/TermiWatch development by ..

반응형