문제 해결
경고
실험적 기능
이는 실험적인 기능입니다. MongoDB는 스니펫을 지원하지 않습니다. 이 기능은 사전 통지 없이 변경되거나 제거될 수 있습니다.
버그는 예상되지 않지만, 버그가 발생하면 Github 리포지토리 에서 문제를 제기하세요. 이 프로젝트의 경우.
다음 섹션에서는 문제 해결 제안 사항을 제공합니다.
npm
로그 파일 보기
문제가 발생한 경우 npm
로그 파일부터 시작하는 것이 좋습니다. 로그 파일 위치는 npm
설치에 따라 달라집니다. 다음과 같습니다.
/<NPM USER HOME>/.npm/_logs/2021-09-16T22_03_34_534Z-debug.log
로그 파일을 찾으면 가장 최근의 로그 파일을 확인합니다.
비특정 오류 메시지
문제: mongosh
이(가) shell 을 시작하려고 할 때 불특정한 오류 메시지를 반환합니다.
솔루션: 스니펫을 비활성화하고 mongosh
를 다시 시작하여 디버깅을 계속합니다.
mongosh --nodb --eval 'config.set("snippetIndexSourceURLs", "")'
오류: Cannot find module
문제 : 셸을 시작하려고 하면 mongosh
가 다음과 같은 오류 메시지를 반환합니다.
Error: Cannot find module '/<PATH to USER HOME>/.mongodb/mongosh/snippets/node_modules/@<REGISTRY NAME>/bad-snippet-name'
npm 로그 파일 에는 다음과 같은 줄이 있을 수 있습니다.
36 error code ELSPROBLEMS 37 error missing: @<REGISTRY NAME>/bad-snippet-name@*, required by snippets@
해결책: ~/.mongodb/mongosh/snippets/package.json
파일을 편집하여 bad-snippet-name
가 있는 줄을 제거합니다.
이 예에서는 위 줄의 후행 쉼표도 삭제하는 것을 잊지 마세요.
{ "dependencies": { "@mongosh/snippet-analyze-schema": "^1.0.5", "@mongosh/snippet-spawn-mongod": "^1.0.1", "npm": "*", "@<REGISTRY NAME>/bad-snippet-name": "^1.0.7" } }
스니펫 제거 실패
문제: 제거는 실패하지만 오류 메시지는 다른 스니펫을 참조합니다.
아래 오류 메시지는 가독성을 위해 다시 포맷되었습니다.
Running uninstall... Uncaught: Error: Command failed: /usr/bin/mongosh /root/.mongodb/mongosh/snippets/node_modules/npm/bin/npm-cli.js --no-package-lock --ignore-scripts --registry=https://registry.npmjs.org uninstall --save @mongosh/snippet-mongocompat with exit code 1: \ npm ERR! code E404 npm ERR! 404 Not Found - GET https://registry.npmjs.org/@<REGISTRY NAME>%2fbad-snippet-name - Not found npm ERR! 404 npm ERR! 404 '@<REGISTRY NAME>/bad-snippet-namen@*' is not in this registry.
해결책: package.json
파일을 편집하여 누락된 항목을 제거합니다. 이 예에서는 위의 줄에서 강조 표시된 줄과 후행 쉼표를 삭제합니다.
{ "dependencies": { "@mongosh/snippet-analyze-schema": "^1.0.5", "@mongosh/snippet-spawn-mongod": "^1.0.1", "npm": "*", "@<REGISTRY NAME>/bad-snippet-name": "^1.0.7" } }