こんにちは、最近アルコールが入っていたらなんでもいいと思うようになってきた @yo-iida です。🍻
今回はみんな大好きHerokuのお話です。
サービス立ち上げ期に大活躍するHerokuですが、CrowdWorks内でもいくつかのプロダクトで本番までHerokuで運用しているサービスがあります。
今回は私が携わっている社内プロダクトでのtipsを紹介します。
このたび、オーム社様より献本いただいた「プログラミングElixir」を読ませていただきました。
Elixirという言語があり、それが関数型言語であること自体は知っていたのですが、どういうものかよく知らなかったため今回読ませていただきました。
私の感想としましては、言語を問わずプログラミングをしたことがある人がElixir(あるいは関数型言語)に入門するための本として一番はじめに読むとうれしいし、別の本を読んだり使ったりした後、再度振り返りのために読む本としても適していると感じました。それに普通の技術書と違い筆者のElixirでのプログラミングを愉しんでもらいたいという気持ちが感じられて読んでいておもしろいのも特徴的だと思いました。こちらに語りかけてくるような文体は、頑張ってやってみようという気持ちにさせてくれます。
ちなみに私は先ほども少し書きましたがElixirは名前ぐらいしか今まで知りませんでした。そんな人物が「プログラミングElixir」を読んだらどうなるかという気持ちでここから先読んでいただけると幸いです。
続きを読む開発の所(@ctokoro_me)です。 インド音楽の演奏が趣味の一つなのですが、興味のある人が全然いない(そもそもインド音楽自体がほぼ知られてない)のが隠れた悩みです。
さて、みなさんが運用中のアプリケーションでは、エラーモニタリングはどのように行っているでしょうか? ログを tail
/ grep
している感じですか?? それとも、エラーが起きたらメールが飛んで来るようになっているのでしょうか? どちらにしても、ユーザーが増えてくると管理が大変になってきてしまいますよね 😵
「一行のログの向こうには、一人のユーザがいる」 *2 という格言(!)もある通り、エラーが起きたということはそのユーザーがサービスを正常に使えていないということです。 しっかりと対応していきたいですね。
クラウドワークスではエラーモニタリングサービスとして Rollbar を採用しています。
続きを読むクラウドソーシングで最大手のクラウドワークスでマネージャーをしてます。@ouraです。
みなさん毎日グラフをみてますでしょうか? エクセルや Google スプレッドシート直接開いてみるのも良いですが、せっかくチャットを使っているのなら活用しましょう!ということでこのエントリです。 定期的にグラフをチャットで見えるようにすることで、こんなメリットがあります。
かなり限定的ですが、私の観測範囲では割りと同じ環境の会社さんが多いかと思われます。
GAS(Google Apps Script) を利用してポストします。 そして利用する Slack の API は file.upload になります。 (Incoming WebHooks はファイルアップロードに未対応のため。)
まずは Slack API を利用するためのトークンが必要になるため、ボットを作成してトークンを取得しましょう。
トークンを取得できたら GAS を作成します。 通知したいグラフがある Google スプレッドシートのメニューから辿れます。
こちらがエディタ画面。
そして以下の様なスクリプトを書きます。
function myFunction(){ var today = new Date(); // 土日は実行しない if (today.getDay() == 0 || today.getDay() == 6) { return; } var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheetByName("graph"); // シート名を指定 var charts = sheet.getCharts(); // グラフが複数ある場合は調整が必要です。 var chartImage = charts[0].getBlob().getAs('image/png').setName("graph.png"); slack(chartImage); } function slack(chart) { var url = 'https://slack.com/api/files.upload'; var token = 'xxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx'; // ボットのトークンをこちらで使います。 var channel = '#my_team'; var payload = { 'token' : token, 'channels' : channel, 'file' : chart, 'filename' : 'バーンダウンチャート' }; var params = { 'method' : 'post', 'payload' : payload }; var response = UrlFetchApp.fetch(url, params); }
あとは定期実行の設定をします。
としておくと、夕会の時間に良い感じにバーンダウンチャートがチームのチャンネルに表示されました!
簡単ですね! :D
クラウドワークスでは開発チームのチャンネルでバーンダウンチャートを共有し、事業部とのコミュニケーション用のチャンネルではKPIやOKR*1を共有したりしています。技術的には目新しいものはなかったかもしれませんが、僅かな技術力にしても仕組みを工夫することで事業に貢献することはできるという一例として参考になればうれしいです。:)
クラウドソーシングのクラウドワークスではリモートワークで育児に積極的に関わりたいエンジニアを募集しております。
また、興味のある方はお寿司ランチを無料で食べながら話を聞くことができますので、よろしければこちらもどうぞ!
© 2016 CrowdWorks, Inc., All rights reserved.