Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Azure Functions を使って社内Slackで今週バズってる投稿が知りたい!
Search
HimekaKawaguchi
February 26, 2024
130
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Azure Functions を使って社内Slackで今週バズってる投稿が知りたい!
HimekaKawaguchi
February 26, 2024
More Decks by HimekaKawaguchi
See All by HimekaKawaguchi
若手エンジニアの成長記- 技術以外に大事なこと -
himekakawaguchi
0
49
COPYコマンドって知ってる?
himekakawaguchi
0
140
社内Slackでバズっている投稿が知りたい!
himekakawaguchi
0
61
Featured
See All Featured
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
320
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
310
A Modern Web Designer's Workflow
chriscoyier
699
190k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Designing Powerful Visuals for Engaging Learning
tmiket
1
580
Bash Introduction
62gerente
615
220k
Building a Scalable Design System with Sketch
lauravandoore
464
34k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.4k
Testing 201, or: Great Expectations
jmmastey
46
8.3k
Navigating Team Friction
lara
192
16k
Facilitating Awesome Meetings
lara
57
7.2k
The Cult of Friendly URLs
andyhume
79
7k
Transcript
Azure Functions を使って 社内Slackで 今週バズってる投稿が 知りたい! クラウドLT大会vol7 2024/02/26 株式会社セゾン情報システムズ 川口媛香
はじめまして Himeka Kawaguchi 川口 媛香 2022年セゾン情報システムズ 入社 データ活用によるお客様の業務効率化を目指すPJに参画 ドメインの理解とエンジニアリングの習熟の両立に奮闘する日々 業務で使用する技術:Snowflake
PowerBI 2
いきなりですが 3
社内メンバーとの コミュニケーションは十分に取れていますか? 4
Slackのリアクションもコミュニケーションの1つ 5
リアクションはもらえると嬉しい 6
きっかけ 社内Slackで2023年に1番リアクションをもらった投稿が知りたく Pythonを使いローカルでSlackリアクションランキングを実装した 1年の振り返りにはもってこい。 詳しくはQiitaに!いいね♡ください https://qiita.com/Himeka_Kawaguchi/items/dfed601108f7caa62009 7
最近沢山リアクションがついた投稿も気になる 年単位の振り返りだけでなく MonthlyやWeeklyランキングを作成すれば 社内でいま注目度の高い投稿が分かりそう 8
社内で今何がバズってるか 知りたい! 9
やったこと ・Pythonを使いSlackリアクション数ランキングを実装 ・作成したランキングをAzure FunctionsでWeeklyで実行 ↑今回のメイン 10
ローカルからクラウドへ ローカル 実行 Python スクリプト 取得 投稿 Slack Azure Functions
Python スクリプト 取得 投稿 Slack 実行 11
なぜAzure Functions? 前提:Pythonで書いたソースコードを使用する Azureで実行する場合の選択肢例 • Azure Functions • Azure Data
Factory + Azure Databricks(Notebook) • Azure Databricks(Notebook + データパイプライン) • Azure ML(MLパイプライン) • Azure Container Apps • Azure App Service ・ 12
なぜAzure Functions? Azureで実行する場合の選択肢例 • Azure Functions • Azure Databricks(Notebook) +
Azure Factory • Azure Databricks(Notebook + データパイプライン) • Azure ML(MLパイプライン) • Azure Container Apps • Azure App Service 前提:Pythonで書いたソースコードを使用したい ・単一サービス ・サーバレス ・複数サービスの組合せor単一サービスでも複数コンポーネントを組合せ ・純粋なサーバレスとは異なるものもある →1番お手軽なので採用! 13
全体像 Azure Functions Python スクリプト 取得 投稿 実行 14
Azure Functions 設定内容 ・言語:Python ・トリガー:Timer trigger 日本時間 毎週金曜日17時に実行 ランキング集計ロジック (既存のコードを貼り付けるだけ)
15
出来たもの WeeklyランキングをSlackに投稿 16
躓きポイント/注意点 ①全体での注意点 ・トークンなどの重要な情報をコード内に書かない →環境変数に追加して使用。クラウド環境においても同じ。 ②Pythonのコードをクラウドに載せるときの注意点 ・言語やバージョンの確認 →ローカルなら最新でok、クラウドの場合は該当するバージョンが対象か確認。 ・ライブラリの一括インストールファイル(requirements.txt) →ローカルでインストールしていたライブラリを、クラウド環境上で取り直しが必要。 ③Azure
Functionsを使う上での注意点 ・エミュレータ、ドキュメントの読み飛ばし 17
重要な情報は環境変数に追加して使用 Azure Functionsではサーバとローカルの2つの環境変数を設定する ▪サーバ側 ▪ローカル側 ・Azureポータル>関数アプリ>構成>新しいアプリケーション設定 ・local.settings.jsonファイルにkey:value形式で登録 18
Pythonコードを使う時の注意点 言語やバージョンの確認 Azure FunctionsでサポートされているPython最新バージョンは3.11.X 公式ドキュメントから確認 ローカル側で対象バージョンのインストールが必要 ▪Azure Functions Azureアイコン>ワークスペース>新しいプロジェクトの作成>バージョン設定 ←対象のバージョンのみ選択肢に表示
※自分のPCにインストールされているPythonのデフォルトバージョンは以下で確認 19
ドキュメントの読み飛ばし エミュレータのドキュメント 私は読み飛ばしが原因で何度か手戻りが発生しました。。 20
まとめ ・ Weeklyランキングにより社内の『今』を知ることが出来た! 在宅勤務ではどうしても見えにくい社内の動きは自分でキャッチアップしないと いけないがWeeklyランキングを見れば簡単に社内の流れを追える。 注目度の高い投稿を見落とさずにダイジェストのように確認できる。 ・初めてのクラウドに挑戦!準備に苦戦… ローカルとは違うクラウドならでの注意点に何度も躓いた。 事前準備さえ整えばクラウドでの実行は想像以上に簡単だった。 一連の流れを経験できたので次回からは楽々進められそう!
21
最後に宣伝ですが、、 ぜひご参加ください! 22
以上です!ありがとうございました! 23