error

Error

[Elasticsearch] Elasticsearch에서 발생한 데이터 타입 변경 문제와 해결

Elasticsearch 환경에서 로그 데이터의 특정 프로퍼티를 string 타입에서 object 타입으로 변경하는 과정에서 문제가 발생하였다. 데이터 타입을 변경한 후 해당 로그가 더 이상 기록되지 않았다. 해당 문제의 원인 파악과 해결 방법을 알아보자. 원인 Elasticsearch는 스키마가 유연한 문서 기반 데이터베이스로서, 데이터의 구조를 미리 정의하지 않고도 데이터를 저장할 수 있다. 하지만 데이터를 한 번 특정 형식으로 인덱싱하면, 이후 해당 인덱스의 맵핑을 변경할 수 없다. 나의 경우, 문자열(string)로 인덱싱된 특정 필드를 나중에 객체(object)로 변경하려고 하면 문제가 발생했다. Elasticsearch는 새로운 데이터를 기존 인덱스에 맞게 강제로 변환하려고 시도하며, 이 과정..

Programming/Node.js

[Node.js] 자주 발생하는 TypeError 해결하기: 'Cannot read property of undefined'

Node.js를 이용한 개발이 점점 인기를 얻고 있다. 그러나 개발 과정에서 발생할 수 있는 다양한 오류들로 인해, 개발자들이 진행에 어려움을 겪을 때가 많다. 이번 글에서는 Node.js 개발 중 자주 마주치는 오류 중 하나인 "TypeError: Cannot read property 'x' of undefined"에 대해 알아보자. "TypeError: Cannot read property 'x' of undefined" 오류는 객체가 정의되지 않았을 때 발생한다. 객체의 속성이나 메서드에 접근하려고 시도하면 이 오류가 발생한다. 이러한 오류의 일반적인 원인들은 다음과 같다. 1. 변수 또는 객체 초기화 누락 가장 일반적인 원인은 변수 또는 객체를 선언했지만 초기화하지 않은 경우 이 경우 해당 변수는..

Error

[Error] slack error: web-api:WebClient:0 http request failed An HTTP protocol error occurred: statusCode = 408

slack web-api를 통해서 slack에 파일을 발송하던 도중 web-api:WebClient:0 http request failed An HTTP protocol error occurred: statusCode = 408 이라는 에러가 발생했다. 해당 원인의 대한 에러와 해결 방법을 찾아보자. 환경 node: v16.15.1 @slack/web-api: v6.8.0 원인 해당문제의 원인은 큰 데이터를 slack으로 발송할 때 slack web-api 쪽에서 에러를 던지면 10번까지 재시도 하게 되어있는게 원인이였다. 에러가 발생했음에도 slack으로 실제로 데이터가 10번 왔다. 해당 문제는 아래 참고 링크의 이슈에도 있었다. 해결 아래 이슈를 확인후 새로운 코드를 적용해서 해결했다. 1. sla..

Programming/Node.js

[Node.js] Error: bind EADDRINUSE null:80

pm2의 cluster mode를 사용해서 서버를 켜던 도중 Error: bind EADDRINUSE null:80이라는 에러가 발생했다. 해당 에러의 원인은 이미 80포트를 사용중이기 때문이였다. (다른 서버가 80포트를 사용중이였기 때문) 해당 서버의 프로세스를 종료하고 pm2를 실행시켜서 해결하였다.

얼은펭귄
'error' 태그의 글 목록