프로그래밍/개발메모 187

2025-05-18 (일) 개발일지 / 로그 찍다 서버 쥬금

1. console.info 함수를 덮어 썼는데 죽어버렸다.express 에서 req.params 를 로그를 찍었는데 프로그램이 예외를 밷으면 처리를 못했습니다.거의 2시간을 디버깅 해서 찾았는데 황당하군요console.info 를 winston 의 로그 함수로 교체를 했는데예가 object 를 인자로 받으면 로그를 찍다 말고 예외를 던져버렸습니다. 시간낭비 갑이군요 로그 함수 내부에 try-catch 걸고.type LOG_FUNC = (text: string) => void;function log_write(func: LOG_FUNC, arr: any[]) { try { let output = ""; for (let i = 0; i arr.length; i++) { if (i !..

2025-05-17 (토) 개발일지 / 서버 죽음 / 개인정보처리방침

1. 죽은 웹서버 원인 파악일어나보니 웹서버가 죽어있었습니다.누가 /?XDEBUG_SESSION_START=phpstorm이런식으로 호출했나봅니다.phpstorm 의 취약점을 노리는 걸까요제 express 서버는 없는 파일에 대한 예외처리가 없어서 프로그램이 종료되었습니다.ENOENT: no such file or directory, open '/home/gunil/pto/node-sidnft-firebase/pi4server/public/?XDEBUG_SESSION_START=phpstorm' path: "/home/gunil/pto/node-sidnft-firebase/pi4server/public/?XDEBUG_SESSION_START=phpstorm", syscall: "open", ..

2025-05-16 (금) 개발일지

1. 앨릭서 시작영상과 버전이 달라서 명령어가 이상하게 동작했다.큰일이다. 영상: https://www.youtube.com/watch?v=IiIgm_yaoOA&t=1578s영상의; 상황내 상태$ elixir -v Erlang/OTP 27 [erts-15.2.7] [source] [64-bit] [smp:12:12] [ds:12:12:10] [async-threads:1] [jit:ns] Elixir 1.18.3 (compiled with Erlang/OTP 25) 설치 페이지에서 제공되는 버전설치페이지: https://elixir-lang.org/install.html#windowsiex 하면 프로그램가능한 상태가 되어야하는데 나는 추가 명령어를 오청받고 있다.컴터 재부팅하니 영상처럼 프로그램 가능한 ..

대규모 서비스 Elixir 엘릭서를 배워야하는 이유

선행지식 엘릭서는 얼랭의 상위 호한 언어입니다.얼랭에서 되는건 엘릭서에서 다 된다고 보시면 됩니다. 영상: https://www.youtube.com/watch?v=Rjyf_dELAeg 1:17:00 텔레그램과 디스코드 는 아주 많은 유저를 처리해야하는 서비스인데소규모팀으로 운영되고 있다.이것이 가능한 이유는 얼랭의 여러대의 컴퓨터를 하나의 컴퓨터 처럼 동작시킬 수 있다는 점 때문이다. 얼랭은 다른 컴퓨터의 함수를 실행시킬 수 는 언어입니다.마치 모든 함수가자동으로 rest 서비스를 한는것 처럼 구현되어있는데요이 점을 이용하면 아무 컴퓨터에대가 명령을 던져 실행시킬 수 잇습니다.그점을 이용한거 같군요 초반에 장점중에 아주큰 숫자를 문제 없이 처리할 수 있는 기능도 있습니다. 중간에는 웹소켓에 대한 이야기..

구글의 코딩 규칙

영상: https://www.youtube.com/watch?v=nmqJ_4tyw94&t=6s 규칙에 맞는 합당한 이유가 있기 때문에 알아두시면 좋습니다.이렇게 큰기업은 보통 개발영역이라이브러리 쪽과프로그램 쪽으로 나뉘는데요 라이브러리 개발할때의 입장을 잘 설명하고 있습니다.프로그램 개발자는 규칙에 덜 억메여도 되지만라이브러리 개발자는 다른 개발자에게 제공을 해야하는 입장이라 정확한 규칙에 의해 제공하면 좋습니다.

node.js express 와일드카드 (**) 못쓰게 되었네요 / missing parameter name / Unfinished Quotes

이번에 서버를 추가로 만들면서 버전이 달라 졌는데최신 서버는 켜지지가 않아서 알아봤습니다. ** (별 두개) 못쓰게 막혔네요app.get("/posts/**", (req, res)=>{ ~~과 같이 /posts 이후의 값을 모두 받는 코드가 이젠 예외를 뱃습니다. (뭇쓴다는 이야기)Unfinished Quotes이런 요류나missing parameter name이런 요류가 발생하며 서버가 시작도 못하게 되네요로 표시되는 요류입니다.app.get("/posts/*name", (req, res)=>{ ~~이런식으로 *뒤에 파라메터 명이 와야합니다.기능적으로는 뒤에 모든 값들은 받을 수 있게 됩니다.console.log("webgl", req.params);이런식으로 req 의 params 를 읽어보면 뒷부분..

github gist 붙여넣기를 활용해보자 / 코드 붙여넣기 서비스

여기에서 글을 쓰고 블로그에 붙일 수 있나보다.gist: https://gist.github.com/ Discover gistsGitHub Gist: instantly share code, notes, and snippets.gist.github.com 붙여보기들어간건가.. 미리 보기 안되넹 ... 배경색 검은색으로 고정은 안되려나 ..div style="background:black;">script src="https://gist.github.com/thisisone/7d496222f4a975274a6d4dc1d506b2f5.js">script>div>이렇게 붙여넣어봤다."> 잘들어간거 확인됨gist 페이지에서 코드를 수정할 수 가 없었다.내 컴에서 git clone 을 하고 고쳐서 올리면 바뀌는 ..

FirebaseAnalytics.unitypackage 다운로드 / Unity / 용량 왜이케 크냐

이 패키지는 뭐길레 용량이 90메가가 넘는건지이걸 임포트를하면 git 이 350메가가 늘어버립니다.그래서 커밋하지 않고 패키지 파일로 가지고 다니느게 좋을 듯합니다. .gitignore 파일을 추가해서 git 에 커밋되지 않게 제고 했습니다./Assets/ExternalDependencyManager /Assets/Editor\ Default\ Resources /Assets/GeneratedLocalRepo /Assets/firebase왜이케 크징 FirebaseAnalytics.unitypackage 다운로드 링크:https://drive.google.com/file/d/1y14XMmDNDreveM_C1Y5iorjSyc4_-Hj0/view?usp=sharing 구글아 용량좀 줄여다오

유니티 웹 빌드 웹소켓 통신 구현 개발기 / Unity Web / WebSocket / jslib

진행하다 말다를 반복하는 웹빌드에서 웹소켓 사용하는 작업 메모입니다.이것이 구현된다면 웹 브라우저로 온라인 유니티 게임을 만들 수 있습니다.웹소켓은 실시간 통신이 된다는 것을 의미합니다.기술적으로는 가능하며 제대로된 결과물을 이번엔 만들어야겠다고 생각했습니다. 플레이 데모 영상: https://www.youtube.com/watch?v=wHJ6zOM5Zuw웸브라우저를 두개 띄워 웹소켓 버서와 통신해서 서로 화면이 잘 맞는지 확인하는 영상입니다.싱크가 잘맞군요 결과물이 좋으니 개발당시 괴로웠던 시간이 잊혀지는군요(잘가라 괴로워하던 과거의 나) 유니티 참고 문서: https://docs.unity3d.com/kr/2018.4/Manual/webgl-interactingwithbrowserscripting.h..