Compute > Cloud Functions > 콘솔 사용 가이드

이 문서는 Cloud Functions 콘솔에서 함수를 생성하고 관리하는 방법을 설명합니다.

함수 관리

함수를 생성, 수정, 삭제, 복사할 수 있습니다.

함수 생성

함수 설정을 하고 코드를 작성하여 빌드한 뒤 생성 버튼을 클릭하면 마지막 빌드한 패키지로 함수가 생성됩니다.

console-guide-07 console-guide-08

함수 설정

분류 No. 항목 설명
기본 정보 1. 이름 함수의 이름
중복된 함수 이름은 허용하지 않습니다.
함수 엔드포인트 URL로 사용됩니다.
2. 설명 함수의 설명, 최대 250자
함수 설정 3. 엔드포인트 URL 함수 호출 HTTP Endpoint URL
함수 이름 입력 시 자동으로 변경됩니다.
4. 유형 Pool Manager
New Deployment
5. 리소스 함수 동작 환경 리소스 선택
Pool Manager 유형일 경우 지정된 리소스만 선택 가능
New Deployment 유형일 경우 사용자 지정 리소스 입력 가능
6. 실행 제한 시간 함수 실행 시간을 지정(timeout). 함수가 실행되고 지정된 시간을 초과하면 함수는 강제 중단되고 오류로 응답
7. (Pool Manager) 동시 실행 설정 함수의 동시 실행 수 지정. 동시에 함수 호출이 되는 경우 호출 횟수만큼 인스턴스가 동시에 실행되며, 최대 인스턴스는 제한됩니다.
8. (New Deployment) 최소 인스턴스 수 최소한으로 유지할 인스턴스 수 지정.
9. (New Deployment) 최대 인스턴스 수 자동으로 확장 가능한 최대 인스턴스 수 지정.
로그 설정 10. 로그 서비스 연동 Log & Crash Search 서비스를 사용하여 연동할 것인지 선택
함수의 로그는 Log & Crash Search 서비스에서 직접 확인 가능합니다.
로그는 10라인 단위로 전송됩니다.

[참고]
(Pool Manager) 동시 실행 설정

console-guide-05


[참고]
(New Deployment) 인스턴스 수 - 리소스 사용량에 따라 지정된 인스턴스 수만큼 생성되지 않을 수 있습니다.


코드 작성

console-guide-16 console-guide-17 console-guide-18

분류 No. 항목 설명
소스 코드 1. 런타임 환경 함수의 런타임 환경을 선택
런타임 선택 목록에는 지원 중단된 런타임 이름 우측에 지원 중단 배지가 표시됩니다.
지원 중단 런타임을 선택하면 하단에 안내 콜아웃이 노출됩니다.
사용 중단된 런타임은 목록에서 제외되어 선택할 수 없습니다.
2. Entry Point 함수의 진입 지점을 지정. 예: 함수명
런타임 환경의 템플릿에 맞춰 자동으로 완성됩니다.
임의로 수정 시 작성한 소스 코드의 Entry Point와 일치해야 합니다.
잘못 입력한 경우 빌드로는 확인할 수 없고, 테스트 시 로그로 확인할 수 있습니다.
코드 3. 코드 에디터 런타임 환경의 템플릿 파일이 로드되고, 해당 파일을 수정하여 함수를 작성
코드 에디터에서 디렉터리 추가는 불가능합니다. 디렉터리 구조를 편집하려면 템플릿 파일을 다운로드해 로컬에서 직접 수정한 뒤 ZIP 파일 업로드 방식을 사용해야 합니다.
4. 사용자 로컬 환경 사용자 로컬 환경에서 함수 코드를 작성하여 ZIP 파일 형태로 업로드
빌드/테스트 5. 빌드 사용자가 작성하거나 업로드한 코드를 빌드하여 패키지를 생성합니다.
빌드된 패키지는 테스트에 사용되며, 함수 생성/수정 시 마지막 빌드한 패키지가 함수 버전으로 연동됩니다.
빌드/테스트 버튼은 설정 영역 하단의 빌드/테스트 영역에 위치하며, 빌드가 완료되면 테스트 버튼이 활성화됩니다.
6. 테스트 테스트 탭에서 함수에 전달할 JSON Body(테스트 이벤트)를 작성하고, 하단 테스트 버튼으로 함수를 테스트. (빌드가 선행되어야 합니다.)
로그로 함수 동작을 확인할 수 있습니다.
GET 메서드로 호출합니다.
환경 변수 7. 환경 변수 함수에 주입할 환경 변수를 등록/수정/삭제하고 키로 검색합니다. 자세한 내용은 아래 환경 변수를 참고하세요.
8. 생성 생성 버튼을 이용해 함수 설정과 작성한 함수에 맞게 함수를 생성


[참고]
빌드 버튼으로 생성된 패키지는 함수 생성/수정 시 마지막 빌드한 패키지가 함수 버전으로 연동됩니다. 함수 생성 전 최소 1회 이상 빌드를 수행해야 합니다.

[참고] 빌드/테스트 영역
빌드 또는 테스트를 실행하면 빌드/테스트 영역에서 터미널이 펼쳐지며, 빌드 로그와 테스트 로그가 탭으로 구분되어 표시됩니다. 접기 버튼으로 숨길 수 있습니다.

[참고] 런타임 지원 상태
지원 중단(EOL)된 런타임을 선택하면 하단에 다음과 같은 콜아웃이 표시됩니다. (날짜는 런타임에 따라 다릅니다.)
"본 런타임은 2026년 4월 30일에 지원이 중단되었으며, 2026년 10월 31일에 사용 중단될 예정입니다. 사용 중단 이후에는 기존 함수의 수정이 불가하므로, 안정적인 운영을 위해 최신 런타임 사용을 권장합니다."
사용 중단된 런타임은 목록에서 제외되어 새 함수 생성 시 선택할 수 없습니다. 런타임 상태에 대한 자세한 내용은 개요의 '런타임 지원 상태'를 참고하세요.

환경 변수

함수가 외부 서비스 연동에 필요한 인증 정보(API 키, DB 접속 정보 등)를 코드에 하드코딩하지 않고 환경 변수로 분리하여 관리할 수 있습니다.

  • 함수 생성 및 수정의 코드 작성 단계에서 소스 코드 하위의 환경 변수 관리 영역에서 환경 변수를 등록/수정/삭제할 수 있습니다.
    • 함수당 최대 100개까지 등록할 수 있으며, 100개에 도달하면 변수 추가 버튼이 비활성화됩니다.
  • 등록한 환경 변수는 함수 런타임에 주입되며, 코드에서 각 언어의 표준 환경 변수 접근 방식으로 값을 사용할 수 있습니다. 자세한 내용은 코드 템플릿 가이드를 참고하세요.
  • 키를 기준으로 검색할 수 있으며, 매칭되는 항목이 등록 순서대로 표시됩니다.
  • 환경 변수의 생성/수정/삭제는 빌드와 무관하게 동작합니다. 다만 변경한 값이 실행 중인 함수에 반영되려면 함수가 다시 시작되어야 합니다.
환경 변수 제약 사항
항목 제약
개수 함수당 최대 100개
영문자 또는 언더스코어(_)로 시작하며, 영문자·숫자·언더스코어(_)만 사용 가능
최대 128자, 중복 불가
(정규식: ^[A-Za-z_][A-Za-z0-9_]*$)
최대 4,096자

[참고] 예약 키 제한
시스템·런타임이 특별하게 취급하는 일부 키는 보안상 환경 변수로 등록할 수 없습니다. 아래는 차단되는 키의 대표 예시이며, 이 외에도 차단되는 키가 있습니다.
- 공통: PATH, HOME, LD_PRELOAD, LD_LIBRARY_PATH
- 언어/런타임: PYTHONPATH(Python), NODE_OPTIONS(Node.js), JAVA_TOOL_OPTIONS·CLASSPATH(Java)
- 접두사 LD_, DYLD_, KUBERNETES_, FISSION_로 시작하는 키는 모두 차단됩니다.

함수 수정

기존 함수의 함수 설정 및 코드를 수정하려면 수정 버튼을 클릭합니다.

수정 불가 항목

  • 이름, 런타임 환경
    • 해당 항목을 제외한 모든 항목을 수정할 수 있습니다.

소스 코드

  • 코드 에디터를 사용하는 경우 기존 코드가 로드됩니다.
  • 사용자 로컬 환경의 ZIP 파일을 업로드하여 함수를 생성했을 경우, 코드 에디터로 변경하면 ZIP 파일을 보여주지 않고 기본 템플릿 코드를 로드합니다.

사용 중단 런타임 함수 수정 제한

  • 사용 중단된 런타임을 사용하는 함수는 수정할 수 없습니다.
  • 함수 목록에서 사용 중단 런타임을 사용하는 함수를 단건 선택하면 수정 버튼이 비활성화되어 함수 수정 화면으로 진입할 수 없습니다.
  • 비활성화된 수정 버튼에 마우스를 올리면 다음과 같은 툴팁이 표시됩니다.
    • "사용 중단된 런타임으로 함수를 수정할 수 없습니다. 최신 런타임으로 함수를 새로 생성해주세요."
  • 지원 중단(사용 중단 전) 런타임을 사용하는 함수는 수정할 수 있으며, 함수 생성과 동일하게 안내 콜아웃이 표시됩니다.

함수 삭제

console-guide-14 기존 함수를 선택하여 삭제합니다. 한 번에 여러 함수 삭제가 가능합니다.

함수 복사

console-guide-13 기존 함수와 동일한 함수를 복사합니다. 이름은 중복이 불가능하여 복사 전에 이름을 새롭게 작성할 수 있습니다. - 트리거는 복사되지 않습니다. (HTTP 트리거는 기본 제공) - 버전은 현재 적용된 버전만 복사됩니다. - 원본 함수에 등록된 환경 변수는 그대로 복사됩니다.

함수 정보

함수 목록

console-guide-01 - 사용자가 생성한 함수 목록을 확인할 수 있습니다. - 빌드 상태는 현재 버전의 빌드 상태를 표시합니다. - 런타임 정보 우측에 런타임의 지원 상태(지원 중단/사용 중단) 배지가 표시됩니다.

함수 기본 정보

console-guide-19 - 함수의 기본 정보를 확인할 수 있습니다. - 로그 관리 항목에서 Log & Crash Search 버튼을 클릭해 Log & Crash Search 서비스로 이동하여 로그를 확인할 수 있습니다.

함수 환경 변수

함수 상세 정보의 환경 변수 탭에서 해당 함수에 등록된 환경 변수 목록을 확인할 수 있습니다.

console-guide-20

No. 항목 설명
1. 검색 환경 변수 키를 기준으로 검색합니다.
2. 값 마스킹 값은 기본적으로 마스킹되어 표시됩니다.
각 행의 눈 모양 아이콘을 클릭해 값을 확인할 수 있으며, 여러 값을 동시에 확인할 수 있습니다.
  • 환경 변수의 등록/수정/삭제는 함수 생성 및 수정의 코드 작성 단계에서 할 수 있습니다. 자세한 내용은 함수 생성 > 환경 변수를 참고하세요.

함수 버전 관리

console-guide-15 - 함수의 버전을 관리할 수 있습니다. - 생성된 모든 버전의 이력을 확인하고, 이전 버전으로 롤백할 수 있습니다.

버전 관리 개요

함수 생성/수정 화면에서 빌드 버튼을 클릭해 코드를 빌드하면 패키지가 생성됩니다. - 함수 생성/수정 시 마지막 빌드한 패키지가 함수 버전으로 연동됩니다. - 각 버전은 독립적으로 관리되며, 테스트한 버전을 그대로 함수에 적용할 수 있습니다. - 함수 생성 시 최소 1회 이상 빌드를 진행해야 함수 생성이 가능합니다.

버전 정보

No. 항목 설명
1. 버전 목록 함수의 모든 버전 이력을 확인할 수 있습니다.
버전 이름, 런타임, 소스 코드, 빌드 상태 등의 정보가 표시됩니다.
런타임 정보 우측에는 런타임의 지원 상태(지원 중단/사용 중단) 배지가 표시됩니다.
2. 현재 적용된 버전 현재 함수에 적용된 버전이 표시됩니다.
3. 소스 코드 다운로드 선택한 버전의 소스 코드를 ZIP 파일로 다운로드할 수 있습니다.
4. 로그 확인 선택한 버전의 빌드 로그를 확인할 수 있습니다.
기본 정보 탭의 빌드 로그 확인 기능과 동일합니다.

버전 배포

  • 버전 목록에서 배포할 버전을 선택하고 버전 배포 버튼을 클릭하면 해당 버전으로 함수가 업데이트됩니다.
  • 현재 적용된 버전은 선택할 수 없습니다.
  • 여러 버전을 동시에 선택할 수 없으며, 하나의 버전만 배포 가능합니다.
  • 빌드 실패한 버전도 배포할 수 있습니다.

[참고]
버전 배포 시 확인 팝업이 표시되며, 성공 시 버전 목록이 자동으로 갱신됩니다.

버전 삭제

  • 버전 목록에서 삭제할 버전을 선택하고 버전 삭제 버튼을 클릭하면 해당 버전이 삭제됩니다.
  • 현재 적용된 버전은 삭제할 수 없습니다.
  • 여러 버전을 선택하여 한 번에 삭제할 수 있습니다.
  • 버전 삭제 시 해당 버전의 소스 코드도 함께 삭제됩니다.

[참고]
버전 삭제 시 확인 팝업이 표시되며, 삭제된 버전은 복구할 수 없습니다.

제약 사항

  • 함수 생성/수정 화면에서 빌드한 패키지는 함수 생성/수정을 취소하면 함수 버전으로 연동되지 않습니다.
  • 함수 삭제 시 해당 함수와 연동된 모든 버전도 함께 삭제됩니다.
  • 함수 복사 시 원본 함수의 현재 적용된 버전만 복사되며, 모든 버전 이력이 복사되지는 않습니다.
  • 함수 생성 시 여러 런타임으로 빌드할 수 있으나, 함수 수정 시에는 생성 당시 선택한 런타임으로만 빌드할 수 있습니다.

함수 트리거 관리

  • 함수를 실행할 수 있는 트리거를 관리할 수 있습니다.
  • HTTP 트리거는 함수 생성 시 기본으로 제공됩니다.
    • 활성화/비활성화로 사용 여부를 설정할 수 있습니다.

console-guide-12

  • 주어진 HTTP 트리거로 생성한 함수를 수행할 수 있습니다.
    • 예: https://{userdomain}/{함수명}
    • Method: GET, POST

트리거 생성/수정

  • Timer
    • Value: Cron 문자열로 주기를 입력합니다.
  • API Gateway
    • API Gateway 서비스를 이용하여 HTTP Endpoint를 추가할 수 있습니다.

트리거 삭제

  • 여러 건의 트리거를 선택하여 삭제할 수 있습니다. 기본 트리거인 HTTP 트리거는 삭제할 수 없습니다.

함수 모니터링

console-guide-06 - 함수의 사용량을 확인할 수 있습니다. - 함수 호출 횟수, 호출 거부 수, 오류 발생 횟수, 성공률, 함수 실행 시간 지표를 제공합니다. - 설정된 시간 내의 지표를 제공합니다. - 로그가 연동된 경우 Log & Crash Search 버튼을 이용해 Log & Crash Search 서비스로 이동할 수 있습니다.

항목 설명
함수 호출 횟수 총 함수 호출 횟수(초당)
호출 거부 수 인스턴스가 생성되지 않아 함수 호출 실패한 횟수(초당)
오류 발생 횟수 응답 코드가 200이 아닌 응답 횟수(초당)
성공률 총 함수 호출 횟수 대비 성공한 호출 비율
함수 실행 시간 함수 호출에 대한 응답 시간

[참고]
호출 거부 수는 Pool Manager 유형일 경우만 해당합니다.
함수 호출 횟수, 호출 거부 수, 오류 발생 횟수는 지표 step 범위 내 초당 평균 횟수로 표시됩니다. 예를 들어, step이 15초이고 해당 기간 내 1건이 발생했다면 0.0667(1÷15)로 표시됩니다.
함수 실행 시간의 평균은 전체 누적 평균이고, 최댓값은 해당 기간 동안의 최대 실행 시간입니다.

TOP