ã¤ã±ã¦ãæãã®IT伿¥ã§çµ¶è³å¤§æµè¡ã®Slackã
ï¼æ®å¿µãªããåè·ã§ã¯ããããã®é½åã§å°å ¥ã§ããªãã£ãããæ¬¡ã®è·å ´ãä»ã®ã¨ããéããã¼ã«ããããã ãã©ã»ã»ã»ï¼
ããããåããSlackã¯ã³ãã¥ãã±ã¼ã·ã§ã³ãã¼ã«ã¨ããããã¯å人ç¨ã®ã¿ã¤ã ã©ã¤ã³ã¨ãã¦æ´»ç¨ãã¦ããããã
- Bitcoinã®å¤åãéç¥
- ã´ãåºãã®ææ¥ã®éç¥
- ãµã¼ãã®ç£è¦ã¢ã©ã¼ã
- éãã¹ã¯ãªããã®å®äºéç¥
...etc
ãããããã®ãä¸ç®æã«ã¾ã¨ããããããã¹ããããã確èªã§ãããã便å©ãªã®ã ã
ãããªæãã§ããã¯ç³»ãªä½¿ãæ¹ãæãã¦ã¿ããã©ããã£ã¨åç´ã«ã¹ãããããPCãããã¢ã¯ã»ã¹ã§ãããã¨ãæ´»ããã¦ã ä¾ãã°æè¡ãã¿ã ã£ããæ¬ãæ ç»ã®ææ³ã ã£ããã®æãã¤ããçæãã²ããã²ããä¸ããã¡ã¢ã¨ãã¦ãéå®ãã¦ãããããã
ã§ããããã£ãä½¿ãæ¹ããã¦ããã¨æ¬²æ±ã¨ãã¦åºã¦ããã®ãã çºè¨ãå¿ è¦ãªãã®ã ãåãåºãã¦ä¸¦ã¹æ¿ããããããã¨ããæ¬²æ±ã
ã¤ã¾ãã¯Slackçã®Togetterãæ¬²ããï¼
APIããããèªä½ããããã»ã»ã»ã¨èãã¦ããããããããã°ããããã®ãæ¢ã«ä½ã£ããããªãã¥ã¼ã¹ãè¦ããããã¨æãåºãã ã°ã°ã£ã¦åºã¦ããã®ãTogelackã
http://qiita.com/ru_shalm/items/32160b23df535ed78967qiita.com
http://qiita.com/ru_shalm/items/35100b527877cfe09b5eqiita.com
Herokuã«ä¸çºãããã¤ããææ®µãç¨æããã¦ããã£ã½ããã©ã極ãã¦å人çãªä»£ç©ã¨ãããã¨ã§èªå® ãµã¼ãã«å ¥ãããã¨ã«ããã
ããã¦ããèªå® ãµã¼ãã«é¢ãã¦ã¯åºæ¥ãéãDockerã§å°å ¥ãããã¨ããæ¹éãªã®ã§ãä»åãDockerã§ç°å¢æ§ç¯ãããã¨ã«ããã
Dockerfile
æ¢ãã¦ã¿ããDockerHubã«ãä¸ã¤ã¤ã¡ã¼ã¸ãä¸ãã£ã¦ããããã©ãå ¬å¼ãããªããDockerfileãå ¬éããã¦ãªããããªã®ã§ã ã²ã¨ã¾ãèªåã§ä½æã
FROM ruby:2.2.4 ENV APP_ROOT /usr/src/togelack WORKDIR $APP_ROOT RUN apt-get update && \ apt-get install -y git nodejs \ --no-install-recommends && \ rm -rf /var/lib/apt/lists/* RUN git clone https://github.com/rutan/togelack.git $APP_ROOT RUN \ echo 'gem: --no-document' >> ~/.gemrc && \ cp ~/.gemrc /etc/gemrc && \ chmod uog+r /etc/gemrc && \ bundle config --global jobs 4 && \ bundle install && \ rm -rf ~/.gem RUN rake assets:precompile EXPOSE 3000 ENTRYPOINT ["rails", "server"] CMD ["-b", "0.0.0.0"]
ruby:2.2.4ã®ã¤ã¡ã¼ã¸ããã¼ã¹ã«ã¢ã¸ã¥ã¼ã«å ¥ãããgithubããã³ã¼ãæ¾ã£ã¦ãããã
æ®æ®µRailsã¾ããããããæ©ä¼ããããªã«ç¡ãã®ã§ããã¡ãã£ã¨è¦å´ããããªã¨æã£ããã©ã æµç³ã¯ã¡ã¸ã£ã¼ãªãã¬ã¼ã ã¯ã¼ã¯ã¨ããã¹ãããåèã«ãªãæ å ±ããã£ã±ããã£ã¦æãã®å¤ã¹ã«ãã¨ä½æã§ããã
â»åè·ã®ç¬èªãã¬ã¼ã ã¯ã¼ã¯ï¼ä½æè ã¯æ¢ã«éè·ï¼ã§ã®è¦å´ãæãã¨æ¶ã滲ãã§ãã
docker-compose.yml
ãã¯ãããªãã¿Docker Composeã使ãããã«docker-compose.ymlã使ããã
ããããversion2ãã©ã¼ãããã«ãæ £ãã¦ããã
version: "2" services: togelack: build: . ports: - "XXXXX:3000" # ãã¹ãã®éãã¦ããã¼ããå²ãå½ã¦ãã environment: - "RAILS_ENV=production" - "MONGOID_ENV=production" - "MONGO_URL=mongodb://mongo:27017/togelack" - "REDIS_URL:redis://redis:6379" - "SLACK_TOKEN=XXXXXXX" # 1. apiã®authãã¼ã¸ã§çºè¡ããããã¼ã¯ã³ - "SLACK_CLIENT_ID=XXXXXX" # 2. apiã®appãã¼ã¸ã§åå¾ - "SLACK_CLIENT_SECRET=XXXXXXXXX" # 2. apiã®appãã¼ã¸ã§åå¾ - "SLACK_TEAM_ID=XXXXXXXXX" # 4. apiãå©ãã¦æ¾ã - "SLACK_TEAM_NAME=XXXXXXX" # ãã¡ã¤ã³ã®https://XXXXXX.slack.com/ã®é¨å - "SECRET_KEY_BASE=XXXXXXXXXX" # é©å½ãªæååãè¨å®ããã restart: always depends_on: - mongo - redis restart: always mongo: image: mongo:latest volumes: - "/srv/docker/togelack/mongo:/data/db" # ãã¼ã¿ã®æ°¸ç¶åã®ãã restart: always redis: image: redis:latest volumes: - "/srv/docker/togelack/redis:/data" # ãã¼ã¿ã®æ°¸ç¶åã®ãã restart: always
1. ãã¼ã¯ã³ã®çºè¡
slackãã°ã¤ã³å¾ã«https://api.slack.com/web#authenticationãã¼ã¸ã«ã¢ã¯ã»ã¹ãã ãGenerate test tokensããã¿ã³ããçºè¡ã
ãxoxp-~ãã¨ããã®ãã½ã¬ã
2. CLIENT IDããã³CLIENT SECRETã®åå¾
https://api.slack.com/appsãããCreate New Appããã使ã
3. ã³ã¼ã«ããã¯URLã®è¨å®
ãOAuth & Permissionsãã¿ãã鏿ããèªè¨¼å¾ã®ãã©ã¦ã¶ã®ãªãã¤ã¬ã¯ãå ãè¨å®ããã
ããã«ã¯http://<togelackã«ã¢ã¯ã»ã¹ããããã®URL>/auth/slack/callback
ãè¨è¿°ãããã
4. TEAM IDã®ç¢ºèª
https://api.slack.com/methods/team.info/test ãããTest Methodããã¿ã³ã§ç¢ºèªã§ããã
èµ·åãã¦ã¿ã
å種è¨å®ã»è¨è¿°ãçµãã£ãããdocker-compose up -d
ã§èµ·åãã¦ã¿ãã
åé¡ãªãèµ·åã§ãã¦ããã°ãæå®ãããã¼ãã®ã¢ãã¬ã¹ã«ã¢ã¯ã»ã¹ããã¨ãã¼ã¸ã表示ãããã¯ãã ã
å³ä¸ã®ããã°ã¤ã³ããã¿ã³ããèªè¨¼ãè¡ãã
ã¾ã¨ãã使ãã¦ã¿ã
èªè¨¼ãæ¸ãã ãåºã¦ãããã¾ã¨ãã®ä½æãã¡ãã¥ã¼ãããå®éã«ã¾ã¨ãã®ä½æãè¡ãã
Slackä¸ã§ã¾ã¨ãããçºè¨ã®ãªã³ã¯ãåå¾ãã
å³å´ã®ãã©ã¼ã ã«å ¥åãããã¨ã§çºè¨ãåå¾ããã©ãã°ï¼ããããã§ã¾ã¨ãã®ä½æãè¡ããã¨ãã§ããã
使ããã¨ãããã«è¡¨ç¤ºãããå¾ããç·¨éãç´ããåé¤ãªãããã§ããã
ãããªæãã§ã²ã¨ã¾ãã»ããã£ã³ã°çµããã
åç´ã«ãéã³è¦ç´ ã¨ãã¦ã使ãããã©ã ä¾ãã°é害çºçæã®ã¢ã©ã¼ããªãããSlackã«é£ã°ãããã«ãã¦ããã°äºè±¡ã¨å¯¾å¿æé ãæç³»åã§ã¾ã¨ã¾ã£ããã®ã¨ãã¦è³æåãããã¨ãã§ãããã çµæ§å®ç¨æ¹åã§ãæç¾©ã®ãããã®ãªããããªããã¨æãã
redashããéç¥é£ã°ãã¦ãKPIã®å¤åã¨ããã¸ã®ã¢ããã¼ããªãããã¾ã¨ããã®ãé¢ç½ããããããªãã
次ã®è·å ´ã¯ãã¼ã«å°å ¥ã«ã¯å¯å®¹ãããããSlack使ããããããå°å ¥ãã¦ã¿ãããªãã
![Slackå
¥é [ChatOpsã«ãããã¼ã éçºã®å¹çå] Slackå
¥é [ChatOpsã«ãããã¼ã éçºã®å¹çå]](https://images-fe.ssl-images-amazon.com/images/I/51g9K9r7quL._SL160_.jpg)
Slackå ¥é [ChatOpsã«ãããã¼ã éçºã®å¹çå]
- ä½è : æ¾ä¸é å,å°å³¶æ³°æ´,é·ç¬æ¦å²,忬åå·³
- åºç社/ã¡ã¼ã«ã¼: æè¡è©è«ç¤¾
- çºå£²æ¥: 2016/06/28
- ã¡ãã£ã¢: åè¡æ¬ï¼ã½ããã«ãã¼ï¼
- ãã®ååãå«ãããã° (2ä»¶) ãè¦ã

- ä½è : Adrian Mouat,Skyæ ªå¼ä¼ç¤¾çå·ç«å¸
- åºç社/ã¡ã¼ã«ã¼: ãªã©ã¤ãªã¼ã¸ã£ãã³
- çºå£²æ¥: 2016/08/17
- ã¡ãã£ã¢: åè¡æ¬ï¼ã½ããã«ãã¼ï¼
- ãã®ååãå«ãããã° (1ä»¶) ãè¦ã