SharedIT | 묻고 답하기(AMP)

구글 애널리틱스 데이터 슬랙 연동 문의

안녕하세요.. 일주일 째 해결 못하는 부분이 있어 문의 드립니다. 


스토리 : 개발팀에서 새로 개발한 홈페이지가 있습니다. 개발자분이 구글 애널리틱스와 연동하여 일일 방문자,이벤트 수 등 연동을 해두었습니다. 근데 회사 내부적으로 원하는 것이 일주일에 한번 자동으로 슬랙 어느 한 채널로 보내어 간단하게 일주일 방문자 수, 이벤트 수 등 을 보내야 하는 상황입니다. 


현 상황 :  구글 애널리틱스 api 문서로 파이썬코드짜서 데이터 출력까지는 완료했습니다.


문의 사항 : 

  • 1.코드를 어디에 녹여서 자동으로 돌릴려면 서버나 소프트웨어를 사용해야하는데 비용이 들면 안됩니다ㅜ

  • 2.현재 Windows AD 외 여러 서버가 있는데 어차피 365일 내내 on 상태이니 하나 선정해서 nodejs나 python으로 실시간 돌릴 수 도 있나요? 

  • 3.아니면 슬랙 api에서 코드 자동화 기능 뭐 이런게 있을까요? (제일 희망함)

3개의 답변이 있습니다.

앵그리파파
  0 추천 | 6달 전

구글 애널리틱스 데이터를 슬랙과 연동하는 간단한 가이드라인 알려드리니 참고하세요.

  • 1.슬랙 워크스페이스에 로그인 한 후, 워크스페이스에서 Apps 로 이동하고 Google Analytics 앱을 검색하거나 선택합니다.

  • 2.앱을 추가하면 구글 애널리틱스 정보를 슬랙에 받아볼 수 있는데 Add to Slack 또는 유사한 버튼을 클릭하여 애널리틱스 앱을 추가합니다.

  • 3.구글 애널리틱스 계정으로 이동하여 설정을 열고 Admin 섹션에서 Property를 선택한 후 Google Analytics 알림을 활성화 합니다.

  • 4.알림을 받을 채널을 선택하고 필요한 구글 애널리틱스 이벤트를 설정합니다. (예) 특정페이지 방문자수, 변환률 등

  • 5.설정이 완료되면 슬랙 채널에서 구글 애널리틱스 데이터를 확인할 수 있습니다.

참고로 슬랙 앱 버전이나 구글 애널리틱스 변경에 따라 세부 사항이 달라질 수 있습니다. 

앵그리파파 | 6달 전

그리고, Slack API 설정은

Slack 워크스페이스에서 새로운 앱을 생성하고, Incoming Webhooks를 활성화하여 웹훅 URL을 생성한 다음 앱의 권한 설정에서는 필요한 권한을 부여받아야 합니다. (예) 채널에서 메시지 보내기

코드 구현은, 파이썬을 사용한다면, 

pip install google-auth google-auth-oauthlib google-auth-httplib2 

pip install slack_sdk

아래는 코드의 일부분으로 Google Analytics에서 데이터를 가져와 Slack로 전송하는 예시이니 참고하세요.

from google.oauth2 import service_account
from google.analytics.data_v1beta import BetaAnalyticsDataClient
from slack_sdk import WebClient

# Google Analytics API 인증
credentials = service_account.Credentials.from_service_account_file('path/to/your/keyfile.json')
ga_client = BetaAnalyticsDataClient(credentials=credentials)

# Slack Webhook URL
slack_webhook_url = 'your_slack_webhook_url'
slack_client = WebClient(token=slack_webhook_url)

# Google Analytics에서 데이터 가져오기
# (여기에는 적절한 데이터 쿼리 및 처리 로직이 들어갑니다)

# Slack으로 데이터 전송
message = {
    'channel''#your_channel',
    'text''Google Analytics 데이터: {your_data_here}'
}
slack_client.chat_postMessage(**message)


실제 데이터 쿼리 및 전송 로직은 프로젝트의 요구사항에 따라 수정되어야 합니다.

이런 방법을 사용하여 Google Analytics 데이터를 Slack로 전송할 수 있습니다.

benjamin park | 6달 전

오우 자세한 정보 정말 감사합니다 ㅜ 

Simon.Park
  0 추천 | 6달 전

파이썬을 다룰줄 아시는 듯 한데,

출력된 데이터를 변환 & 특정 채널로 보내는 것은 가능 할 것으로 보입니다.

파이썬이든, 슬랙 api를 이용하든 처음이라 어렵게 느끼시겠지만 가능할꺼에요~~~

benjamin park | 6달 전

넵 화이팅 하겠습니다!

wansoo
  0 추천 | 6달 전

보낼 자료는 준비되어 있다는 말씀이시죠?

준비된 자료를 Slack으로 자동 메시지 보낼 수 있는 방법이 없는지에 대한 문의로 보이는데요.


슬랙에서 제공하는 API를 사용하면 되지 않을까 싶어 보이네요.

직접 해 본것이 아니라... API 이용 비용이 별도 발생하는지 어떤지는 모르겠지만...

인터넷에 슬랙 API 연동 자료를 찾아서 참고하면서 연동을 시키면 되지 않을까 싶어 보이네요.

참고로 정리된 사이트 링크 첨부 드립니다.

https://13akstjq.github.io/api/2019/09/07/Slack-API-%EC%A0%95%EB%A6%AC%ED%95%98%EA%B8%B0.html



RPA를 사용하고 있다면 RPA를 이용해서 슬랙 메신저 로그인 시켜 두고서 메시지 보내는 것을 자동 처리할 수도 있을 것 같고...



파이썬을 사용한다면...

pywinauto 또는 pyautogui 패키지를 이용해서 RPA 수준의 자동화 프로그램을 만들어 실행 시켜둔 슬랙 메신저에 직접 메시지를 집어 넣어 전송시키는 방식으로 자동화 시킬 수도 있을 것 같고요.


메신저가 독립 어플리케이션 형식이고 윈도우 컴퓨터를 이용할 경우라면 pywinauto 패키지를 설치해서 사용하는 것이 가장 좋을 것 같아 보이고...


윈도 뿐만 아니라 리눅스 등에서도 플랫폼에 관계없이 만들고 싶다면 pyautogui 패키지를 사용하는 것이 좋겠고...


웹기반의 메신저라면 셀레니움을 이용하는 것이 좋겠고요.



benjamin park | 6달 전

오우 너무 감사합니다 슬랙 api 먼저 진행해보겠습니다 감사합니다!!