Record 19

[AI 자동화] 웹접근성(WA) 대응 - 3,300개 이미지 Alt 텍스트 생성 자동화

1. 문제 배경: "이미지 alt를 다 달아야 한다" 공공기관 웹페이지 고도화 작업을 진행하면서 거쳐야 했던 WA 인증(웹 접근성 인증) 과정이 있었다.여기서 요구하는 항목 중 하나가“모든 이미지에 대체 텍스트(alt)를 제공해야 한다”는 것이었다.요구사항만 보면 이미지 설명을 작성하면 되는 단순한 작업처럼 보였다. 하지만 실제 데이터를 확인해보니 상황이 달랐다.이미지가 포함된 게시글이 약 911개였고, 전체 이미지 수는 약 3,300개였다.이 순간 느낀 것은 하나였다.이건 사람이 일일이 처리하면 공수가 크게 발생하는 작업이다. 2. 초기 작업 방식 (ChatGPT 기반 수작업)초기에는 ChatGPT를 활용하여 이미지를 하나씩 처리했다.이미지를 복사하여 전달하고 해당 이미지에 대한 설명을 생성한 뒤 그..

Record/IT Diary 2026.03.21

[Trouble Shooting] 지도 포함 리포트 이미지 삽입 문제 해결

최근에 참여했던 프로젝트에서 출장 여비정산 리포트를 개발 과업 중에“주행거리 증빙 화면(지도 포함)”을 이미지로 캡쳐해 ClipReport에 삽입해야 하는 과정이 있었다. 요구사항은 단순해 보였다.지도 화면이 반드시 포함된 상태로 캡쳐되어야 하고매번 다른 주행 경로를 동적으로 캡쳐해야 하며최종 결과는 리포트 안에서 이미지로 출력되어야 했다하지만 실제 구현은 예상보다 훨씬 복잡했다. 이번 이슈는 아래와 같은 환경에서 발생했다.Report: ClipReportFrontend: ReactBackend: Spring (Java)Screenshot: Playwright (Headless Chromium)Map SDK: Kakao Map SDK그리고 문제는 단순히 “캡쳐가 안 된다” 수준이 아니었다. 이슈는 크게 ..

서비스 관리용 콘솔 앱 디자인 리뉴얼기 – Stitch AI와 함께한 UI 개편 과정

서론이번 포스팅에서는 최근 진행했던 콘솔 앱 디자인 리뉴얼 과정을 정리해보려 한다. 진행계기이 콘솔 앱은 운영 중인 서비스의 정상 동작 여부를 확인하고, 서버 및 DB 긴급 재시작, 신규/접속 유저 수 파악, 점검 메시지 등록, 유저 대상 우편 발송 등 다양한 관리 기능을 제공하고 있었다.원래는 데스크톱 환경에서 처리하는 작업이지만, 실시간으로 확인해야 하는 정보와 긴급하게 대응해야 할 상황이 많아 스마트폰에서도 제어할 수 있도록 직접 앱을 만들었다. 하지만 초반에는 기능 구현에만 집중하다 보니 단순 나열식의 투박한 UI가 만들어졌다.사용하다 보니 예상보다 자주 마주하게 되었고, 장기적으로 관리 효율을 높이려면 좀 더 보기 좋은 화면이 필요하다고 느꼈다. 그래서 리뉴얼을 결심하게 됐다. 진행 과정..

Record/IT Diary 2025.09.11

IIS API 요청 실패 및 DB 연결 문제 해결

[서비스 환경]- 프레임 워크: .NET Framework 4.6.1- 데이터베이스: Microsoft SQL Server 2016 (MSSQL 16)- 웹 서버: IIS 서비스 운영 중 특정 시간 이후 모든 API 요청이 무한로딩 상태로 빠지는 현상이 발생했다.문제를 분석한 결과, DB 연결을 적절히 닫아주지 않은 문제로 인해 IIS가 먹통이 되는 상황이었다. 이 포스트에서는 해당 문제의 원인과 해결 방법을 단계적으로 설명한다.    1. 문제 증상서비스가 정상적으로 시작되지만, 약 1시간 후부터 일부 API 요청이 무한 로딩 상태에 빠지며, 연결이 끊어지는 문제가 발생했다. 다만, HTML, CSS, JS와 같은 정적 파일 요청은 정상적으로 처리되었다.즉, API 요청 처리에서 문제가 발생한 것이다...

[Python] pip 명령어 문제 해결: Fatal error in launcher: Unable to create process using '"'

python에서 package를 설치하기 위해 pip명령어 사용시, 아래와 같이 에러가 뜰 때가 있다. 이에 대해 찾아보니 경로 때문에 발생하는 오류라는데 간단하게 해결 가능하다. pip 명령어 앞에 python -m 을 붙여준다. >python -m pip install “-m” Option? -m : 라이브러리 모듈을 스크립트로 실행 그러면 아래와 같이 pip명령어가 정상 동작함을 확인할 수 있다. [상세설명] 먼저 python -m pip는 python으로 지정한 Python 인터프리터를 사용하여 pip를 실행한다. 따라서 /usr/bin/python3.7 -m pip는 /usr/bin/python3.7에 있는 인터프리터에 대해 pip를 실행하고 있음을 의미한다. -m 플래그와 작동 방식에 대해서는..

C# ASP.NET에서 JavaScriptSerializer maxJsonLength 초과 에러 발생 해결

1. 발생현상 C# ASP.NET 4.6.1버전으로 웹페이지를 개발하던 중, View에서 요청한 데이터를 Controller에서 리턴해주는 과정에서 다음과 같은 오류가 발생했다. 이는 기본 Json 응답 크기 제한(ASP.NET 4.6.1버전 기준 - 4MB)을 넘어선 데이터를 응답하려 해서 발생한 에러이다. 이를 해결하기 위한 여러 방안은 다음과 같다. maximum JSON response size를 증가시킨다 - Controller에서 더 큰 JSON응답을 반환할 수 있도록 설정을 수정해주는 방법이다. 페이지 매김 또는 데이터 필터링을 구현한다. - 큰 크기의 데이터를 요청하는 대신 특정 부분을 조회할 수 있게 해주어, 응답하는 데이터의 크기를 간소화하는 방법이다. JSON 응답 데이터를 압축시킨다..

[Postgresql14] postgres service가 에러로인해 시작되지 않던 문제 해결

1. 개요 DB구조를 수정해야해서 PostgreSQL에 데이터베이스를 추가하고 pg_hba.conf 파일을 수정하였고, 수정 후 재시작하였는데 다음과 같이 PostgreSQL 서비스가 죽어서 재실행 되지 않았다. 2. 문제확인 그래서 로그를 차근히 확인해보기위해 위에서 안내된 대로 아래 명령어로 로그를 확인해보았다. journalctl -xe *journalctl: systemd의 서비스 로그를 확인할 수 있는 명령어 -x 옵션을 추가하면 message catalog에서 해당 저널에 대한 상세 설명을 추가해서 보여준다. -e 옵션(pager end) 을 추가하면 pager를 사용해서 마지막 에러 메시지 라인부터 볼 수 있다. 그랬더니, 아래와 같이 pg_ctl명령어를 통해 PostgreSQL서비스를 시작..

[NPM] 사용했던 Package가 업데이트되면서 발생되던 버그 해결

1. 개요 몇 달 전 npm의 의존성 관리 파일 (package.json)에 대해 포스팅 한 적이 있었다. (=> 해당 포스팅) 근데 며칠 전 포스팅에서 우려사항으로 적었던 상황이 실제로 발생되어 포스팅하고자 한다. 2. 문제 상황 웹에서 영상을 녹화한 후, 녹화한 파일을 처리한 뒤에 blob으로 변환하여 firebase storage에 업로드하는 기능을 구현했었다. 그런데, 잘 되던 영상 처리가 어느 순간부터 무한루핑이 돈다는 제보가 있어서 살펴보게 되었는데, firebase 패키지 내에서 오류가 나고 있었다. 그러나, 로컬 개발환경에서는 해당 문제가 발생하지 않았다. 그렇다면.. 변경된 로직이 없다면, 촬영 환경이나 값이 바뀌었을 수도 있다 생각하여 여러가지 원인을 찾아보기 시작했었는데... 희한하게..

[일기] 아는 만큼 궁금하다.

아는 만큼 궁금하다. 이는 어느 분야에서나 통용되는 말이다. 단적인 예로, 소프트웨어로 예를 들어보자면, 소프트웨어에 일가견이 없는 사람의 대부분은 사용하고 있는 소프트웨어가 어떤 구조를 가지고 어떻게 동작하는지 궁금하지 않을 것이다. 단지 사용하는 목적에 맞게 잘 동작하냐 아니냐가 관건일 뿐이다. 하지만, 해당 분야에 대해 공부를 하였고 아는것이 많다면, 첫째로 이 소프트웨어에 대해 말할 수 있는 점이 많아질 것은 당연지사고, 신선하거나 잘 만든 소프트웨어에 대해서는 어떻게 설계하고 구현하였는지 궁금증이 마구 샘솟을 것이다. 참여중인 프로젝트에서 다루고 있는 기술이 있다. 하지만 누군가 나에게 이 기술에 대해 물어본다면, 자신있게 설명할 수 있던 적이 그렇게 많지는 않았던것 같다. 사용하고 있는 기술에..

Record/IT Diary 2022.09.05

2019년 여름 컴공 진학준비생 한달 과외 후기

1. 개요 때는 대학교 4학년 여름방학때였다. 전에 실습을 하였던 기관 연구소장님께 연락이 와서, 미국에 있는 대학교로 컴퓨터공학과 진학을 희망하는 학생이 있는데, 한달 동안 과외를 해줄수 있겠냐는 의뢰를 받았다. 하지만 교육업계에 종사하지 않았고, 어떻게 가르쳐야할지 감이 오지 않아서 막막했지만, 연구소장님께서 과외 소재 방향을 제시해주시고, 장소 지원 및 피드백을 도와주신다는 응원을 듣고 시작하게 되었다. 2. 과외 시작 전, 첫 만남 2.1 학생 만나기 전 학생을 만나기 전, 그 친구에 대해 아직 정확히 파악하지 못하여서, 지난 학년동안 보았었던 전공책들을 훑어보기 시작했다. 컴퓨터공학부의 커리큘럼들을 한번 훑는다는 느낌으로 오리엔테이션을 진행하고, 더 나아가서는 C언어의 기초부터 시작하고자 하였다..

Record/When Univ. 2022.08.28
반응형