GitLab for Slack 앱 문제 해결
GitLab v19.2Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
GitLab for Slack 앱을 사용할 때 다음과 같은 문제가 발생할 수 있습니다. GitLab for Slack 앱이 연동 목록에 표시되지 않을 수 있습니다. 일부 Slack 명령에는 프로젝트 전체 경로 또는 별칭이 필요하며, 프로젝트를 찾을 수 없는 경우 다음 오류와 함께 실패합니다:
GitLab for Slack 앱을 사용할 때 다음과 같은 문제가 발생할 수 있습니다.
앱이 연동 목록에 표시되지 않음#
GitLab for Slack 앱이 연동 목록에 표시되지 않을 수 있습니다. GitLab Self-Managed 인스턴스에서 GitLab for Slack 앱을 사용하려면 관리자가 연동을 활성화해야 합니다. GitLab.com에서는 GitLab for Slack 앱이 기본적으로 제공됩니다.
오류: Project or alias not found#
일부 Slack 명령에는 프로젝트 전체 경로 또는 별칭이 필요하며, 프로젝트를 찾을 수 없는 경우 다음 오류와 함께 실패합니다:
GitLab error: project or alias not found
이 문제를 해결하려면 다음을 확인하세요:
- 프로젝트 전체 경로가 올바른지 확인합니다.
- 프로젝트 별칭을 사용하는 경우 별칭이 올바른지 확인합니다.
- GitLab for Slack 앱이 프로젝트에 대해 활성화되어 있는지 확인합니다.
슬래시 명령이 Slack에서 dispatch_failed를 반환함#
슬래시 명령이 Slack에서 /gitlab failed with the error "dispatch_failed"를 반환할 수 있습니다.
이 문제를 해결하려면 관리자가 GitLab Self-Managed 인스턴스에서 GitLab for Slack 앱 설정을 올바르게 구성했는지 확인하세요.
채널에 알림이 수신되지 않음#
Slack 채널에 알림이 수신되지 않는 경우 다음을 확인하세요:
- 구성한 채널 이름이 올바른지 확인합니다.
- 채널이 비공개인 경우 GitLab for Slack 앱을 채널에 추가했는지 확인합니다.
App Home이 올바르게 표시되지 않음#
App Home이 올바르게 표시되지 않는 경우 앱이 최신 상태인지 확인하세요.
오류: This alias has already been taken#
새 프로젝트에 설정하려 할 때 422: The change you requested was rejected 오류가 발생할 수 있습니다. 반환된 Rails 오류는 다음과 같을 수 있습니다:
"exception.message": "Validation failed: Alias This alias has already been taken"
이 문제를 해결하려면:
- 네임스페이스에서 유사한 이름의 프로젝트 중 GitLab for Slack 앱이 활성화된 프로젝트를 검색합니다.
- 이러한 프로젝트 중 실패한 프로젝트와 동일한 별칭 이름을 가진 프로젝트를 확인합니다.
- 별칭을 편집하여 다르게 만들고, 실패한 프로젝트에 대해 GitLab for Slack 앱 활성화를 다시 시도합니다.
GitLab Duo @mention 실패#
Slack에서 GitLab 앱을 @mention하여 GitLab Duo를 트리거할 때 문제가 발생하면 앱이 스레드에 메시지를 게시합니다.
메시지 텍스트를 사용하여 원인을 파악하고 해결 방법을 적용하세요.
| Slack 메시지 | 원인 | 해결 방법 |
|---|---|---|
| 잠금 이모지(🔒)와 인증 프롬프트 | Slack 계정이 GitLab 계정에 연결되어 있지 않습니다. | 인증 절차를 완료하여 Slack 계정과 GitLab 계정을 연결합니다. |
| "You do not have access to this feature yet" | 계정에 slack_duo_agent 기능 플래그가 활성화되어 있지 않습니다. |
관리자에게 해당 사용자에 대해 기능 플래그를 활성화하도록 요청합니다. |
| "This feature requires GitLab Duo Agent Platform" | 계정에 GitLab Duo Agent Platform 라이선스가 없습니다. | 관리자에게 문의하여 GitLab Duo 사용 권한을 확인합니다. |
| "Set your default Duo namespace in your preferences" | GitLab 계정에 기본 Duo 네임스페이스가 구성되어 있지 않습니다. | GitLab 기본 설정에서 기본 Duo 네임스페이스를 설정합니다. GitLab.com에서는 해당 네임스페이스에 활성 GitLab Duo 애드온 시트가 있어야 합니다. |
| "The Duo Developer flow is not enabled for your namespace" | 네임스페이스에 기본 Duo 플로우가 활성화되어 있지 않습니다. | 그룹 소유자에게 GitLab Duo Agent Platform 설정에서 플로우를 활성화하도록 요청합니다. |
| "Could not set up the service account…" | 네임스페이스의 서비스 계정을 프로비저닝할 수 없습니다. | 네임스페이스의 GitLab Duo 구성 및 서비스 계정 프로비저닝을 확인합니다. |
| "Could not set up the workspace project…" | GitLab이 네임스페이스에서 duo-workspace 프로젝트를 찾거나 생성할 수 없습니다. |
네임스페이스에서 프로젝트를 생성할 수 있는지 확인합니다. 사용자의 역할과 네임스페이스의 project_creation_level 설정이 프로젝트 생성을 허용해야 합니다. |
| "Failed to start the Duo Developer workflow" 또는 "Something went wrong…" | Duo 플로우 트리거 또는 실행이 실패했습니다. | CI 작업 로그와 GitLab 연동 로그에서 자세한 내용을 확인합니다. |
GitLab Duo @mention 디버깅 팁#
-
연동 로그는
integrations_json.log에 기록됩니다. 각 항목에는slack_workspace_id필드가 포함되며, 대개slack_user_id와channel_id도 포함됩니다.slack_workspace_id로 필터링하여 워크스페이스와 관련된 항목을 찾습니다. -
Sidekiq 워커 로그(
sidekiq.log)에도Integrations::SlackEventWorker작업에 대한slack_workspace_id와slack_user_id가 포함됩니다. 이를 사용하여 이벤트가 수신되고 처리되었는지 추적합니다. -
봇이 전혀 반응하거나 응답하지 못하는 경우, 문제는 대개 Slack 연동 구성 또는 봇 토큰에 있습니다.
integrations_json.log에서"message": "SlackInstallation record has no bot token"항목이 있는지 확인합니다. 봇이 반응은 하지만 오류를 게시하는 경우, 문제는 사용자 측 인증 게이트 또는 네임스페이스 확인에 있습니다. -
duo-workspace프로젝트는 플로우가 처음 실행될 때 자동으로 생성되며 이후 재사용됩니다. 프로젝트 생성이 실패하는 경우, 최소한 Maintainer 역할을 가진 네임스페이스를 사용하거나 그룹 소유자에게project_creation_level설정을 조정하도록 요청합니다.