-
ID:0pN6QO さんの質問

フロント側のjavascriptでフロントのウェブアプリでエラーを探知した時に、開発者にメールで通知を送りたいと思っています。何か簡単に出来る方法はないでしょうか?自前でサーバー側のプログラムを書かないで済むような方法があるとベストなのですが。。。

みんなの回答 5 件

ID:78jXvo さんの回答

エラーが起こったらGAにエラーメッセージを送信するならそこそこ簡単にできるよ。
GAからメールがカスタムアラートで出来るかどうかは不明。

ID:0pN6QO

GAというのはGoogle Analyticsのことですか?
Google Appsのことでしょうか?
昨日、ドットインストールのGoogle Apps Scriptの講座をちょっと見ていたのですが、gmailも扱えるようだったので、それでもできるのかな。。。

ID:78jXvo

Analyticsの方です。

ID:sfJedi

すいません。何でググるとGAを使ったメール送信のは出てきますか?ググってみたのですが、なかなか見つかりませんでした。

ID:sfJedi さんの回答

トピ主です。一応こんなのは見つけました。

参考

http://yutapon.hatenablog.com/entry/2014/02/02/165531
ID:sfJedi

ただ、backbone.js未経験なので、リンク先記事のハードルが自分には高いです。

ID:sfJedi さんの回答

自分でサーバー側のプログラムをメール送信ライブラリー使って書いて、ajaxでそのプログラムを実行させるのが一番楽ですかね?

ID:78jXvo

そもそもなんだけど、一つエラーが見つかったとして、それを100人が遭遇した場合、100件メールが送られるって事だとしたら、メールサーバーしんじゃう気がする。

ID:0pN6QO

えっ。。。そんなところまで考えていなかったです。というか自分の知識ではそこを想定することすらできませんでした。そもそもの話なんですが、今回の話とは別にしてサーバー側のプログラムでエラーが探知された場合、開発者にメール送るということはしないんですかね?エラーログを開発者が見ることで対応するのでしょうか?

ID:78jXvo

エラーが起こったら何か処理するというプログラムを稼働中の物に仕込む場合、そのエラーによって仕込んだプログラム自体が止まる可能性も高いですよね。
なので、ログに異常があったらとか別の監視方法を取ります。

ID:0pN6QO

具体的に書いていなくてすいません。今回の場合のエラーというのは、指定したIDのものを外部APIに問い合わせた時に存在しなかった場合に外部API側から返ってくるエラーで、そのエラーが起きた場合は次に用意しているIDを外部APIに問い合わせるという感じで対処出来てしまうような簡単なものです。メールを開発に飛ばしたいというのは、存在しないIDが出てきた時にそのIDをチェックして対応する為です。

ID:0pN6QO

頂いたコメントを読んで思ったのは、存在しないIDがあった場合はファイルからそのIDを自動で削除するプログラムをサーバー側で書いてあげることが、メール送信で開発者にエラーを通知させるよりも良い対応なのかなと思いました。

ID:78jXvo

そういうのは正常な対処なのでエラーとは言わない気がする。

ID:0pN6QO

メールを開発者に飛ばすというのは、アプリケーションが止まってしまった時とか、ウェブサーバーが落ちた時とかなんですかね。(もちろんエラーが起きたプログラムとは別の監視プログラムでメール通知を実行)

ID:78jXvo

監視の目的であれば、そういう緊急の場合も含め、日時レポート、月時レポートを飛ばしたりはすると思う。

ID:HWQo6c さんの回答

Gmail apiかなって思ったけど、上の方が楽だと思う。

ID:0pN6QO

上のというのは2個目のbackbone.jsを例に試してるAPIのことですか?

ID:yuTjZT さんの回答

実際の開発の人に聞いたらどうなの。
開発者でないトピ主が苦悶したところで何も解決できないよ。
GAで統計とるのが一般的だし、何らかのAPIで仮にメール送信を実装したとしても、そんな想定外な使い方すぐに蹴られちゃうよ。

ID:0pN6QO

自分で作っている一人完結のサイトなので自分が開発者ですね。「GAで統計とるのが一般的」の統計というのは何の統計のことですか?「すぐに蹴られちゃう」という意味が何を表しているのか分からなかったのですが、これは別の言葉に置き換えると何になりますか?

ID:yuTjZT
  • >GAで統計とるのが一般的
    webサイトのようにサーバーを介さないアプリケーションの場合、必然的にフロントで解決することになるけど、その場合GAが使われることが多いという感想です。atomとかのプラグインのソースを覗いてみると参考になるよ。
  • >すぐに蹴られちゃう
    上で話題が挙がってたから説明する必要がないと思ったけれど、人様のサービス(api)を借りて、頻繁にメールを送り付けるような行為はban対象ってことですよ。
  • 一人完結のサイトで、サーバーサイドでさくっと実装できることを何故にフロントで解決するイレギュラーを取るのかという不思議。もしそれが「バックエンドを知らないから」という理由なのであれば、ものすごく本末転倒な方向に向かっていると思ったほうがいい。立場を表現するときにバックエンド、フロントエンドとして分けることが多いけど、それらは本来分ける必要はなくて、完全静的なページでない限り、どちらがかけても成立しないよ。
  • コメントを見て思ったのは、リアルタイムにメール送信する必要性があるのかってところ。DBにエラーを貯めていって好きなタイミングで見ればいいじゃん。もしそれが億劫なら、cronでDBの内容を定期送信すればいい。しかし、いずれにしてもサーバーサイドの話。
ID:0pN6QO

>atomとかのプラグインのソースを覗いてみると参考になるよ。
見てみます。
>cronでDBの内容を定期送信すればいい。
これいいですね。これにするかな〜。

最終更新日:2016-02-19 (1,617 views)

関連するトピックス

ページ上部に戻る