タグ スタックトレース
人気順 10 users 50 users 100 users 500 users 1000 usersgoのエラーをスタックトレースも含めて構造化ログで残したい - エムスリーテックブログ
こんにちは、エムスリーエンジニアリンググループの福林 (@fukubaya) です。 golangでずっと課題に思っていたエラーの処理について試行錯誤してみました。 イオンモール センソックシティは、カンボジアにある商業施設。本文には関係ありません。 エラー処理のベストプラクティスは? ぼくがかんがえるエラー処理の要件 ... 続きを読む
スタックトレース始めてみた
社内のLT会で使用した資料です。 URL p.8 比較・検討 https://pkg.go.dev/github.com/pkg/errors https://pkg.go.dev/golang.org/x/xerrors https://github.com/juju/errors https://github.com/go-errors/errors https://github.com/morikuni/failure https://github.com/hashicorp/go-multierror https://github.com/r... 続きを読む
Goのerrorがスタックトレースを含まない理由 - methaneのブログ
Twitterでこんな記事を見かけたので。 zenn.dev ジェネリクスの件もそうですが、Goの言語設計は現実主義なのになにか特別なポリシーによるものだと宗教化されてしまって、ファンには勝手に崇拝されてアンチにはディスられがちだなーと感じます。 Goのエラー処理を改善する実験プロジェクトxerrorsがGo本体のerrorsにマー... 続きを読む
次なる`pkg/errors`を探して - カンムテックブログ
エンジニアの宮原です。 今回はGoでスタックトレースを取得するライブラリ選定についての記事です。 この記事は 【Gophers Talk】スポンサー4社による合同LT & カンファレンス感想戦で発表したものです。 発表スライドはこちらから確認できます。 この記事の目的 この記事ではpkg/errorsからの移行先を探すための参考情... 続きを読む
webpack, babel, node環境で例外時のスタックトレースに元ソースの場所を表示させる - ncaq
問題 nodeに読み込ませるソースをwebpackとbabelでコンパイルするようにすると,エラー時のスタックトレースが at Object.eval (webpack-internal:///76:29:7) のような意味不明なものになってしまいます. これはソースマップを有効にしていても起きてしまいます. webpackのissueにも既にこの問題は報告されていましたが. SourceMap ... 続きを読む
ptraceとELFとLinuxレジスタ - sonots:blog
ptrace(2)に入門。ptrace(2) は Linux を含む Unix 系OS にあるシステムコールで、実行中のプロセスに対して、メモリ上のデータやレジスタの値を抜き出したり、書き換えたりすることができる。 これを使ってごにょごにょすると、実行中の関数とその引数を取り出して、実行中のプロセスを止めずにスタックトレースを取得したり、 デバッガを作ったり 、 標準出力を横取りして audit ... 続きを読む
golang で書かれたプロセスのリソースを外部から監視/操作できる「gops」 - Qiita
この記事は Go Advent Calendar 2016 の3日目の記事です。 はじめに 今回は gops という Google 製のツールを紹介したいと思います。 https://github.com/google/gops gops は ps コマンドの様に動作しますが、golang で書かれたプロセスに限って以下の機能を提供します。 スタックトレースの表示 メモリ状態の表示 ランタイム状態... 続きを読む
Rails アプリケーションのデバッグ — Rails ガイド
本ガイドでは、Ruby on Rails アプリケーションのさまざまなデバッグ技法をご紹介します。このガイドの内容: デバッグの目的 テストで特定できない問題がアプリケーションで発生したときの追跡方法 さまざまなデバッグ方法 スタックトレースの解析方法 1 デバッグに利用できるビューヘルパー 変数にどんな値が入っているかを確認する作業は何かと必要になります。Rails では以下の3つのメソッドを利... 続きを読む
pixivで行っているバグフィックスデーについて紹介します - pixiv engineering blog
2014-11-10 pixivで行っているバグフィックスデーについて紹介します ツイート こんにちは、ISUCONのために2ヶ月ほどgoをみっちり書いてた@edvakfです。練習した甲斐あって2位になることができました。 バグフィックスデーについて pixivではPHPのアプリケーションのエラーはすべてfluentd経由でMongoDBに入れていて、管理画面からスタックトレースなどを見られるよう... 続きを読む
Ruby プロセスを追いかけるツール9選 - sonots:blog
2014年07月30日01:00 カテゴリ Ruby プロセスを追いかけるツール7選 gdbgdb を使って指定スレッドのスタックトレースを表示させたり。$ sudo gdb -p <pid> (gdb) info thread (gdb) thread 14 (gdb) bt core を吐かせておいてから追う場合はこう$ sudo gcore <pid> $ gdb /usr/lib64/fl... 続きを読む
Java8 Stream API では collector とかを複数回呼ぶと実行時エラーになる - blog.64p.org
以下のようなコードは、実行時エラーになる。 Stream<String> ss = Arrays.asList("hoge", "fuga").stream(); System.out.println(ss.count()); System.out.println(ss.count()); スタックトレースは以下のようになる。 stream has already been operated up... 続きを読む
CoreからRubyのスタックトレースを表示するgdbruby.rbを作った
gdbperl.plというスクリプトがあります。そんkする樋口証さん作の、gdbを操作してPerlのプロセスのバックトレースを取るツールです。生きているプロセスだけではなく、coreを取っておけばそのcoreからバックトレースが取れるのが特徴です。 gcoreというコマンドが/usr/binあたりにあって、これを使えば走っているプロセスのcoreを取得することができます。よって、本番環境で気軽にc... 続きを読む
gdb のRPM に付属する /usr/bin/gstack, /usr/bin/gcore コマンド - hibomaのはてなダイアリー
Scientific Linux 6 系の gdb の RPM に /usr/bin/gstack, /usr/bin/gcore というスクリプトが含まれているのを知りました。どちらも gdb をラップしたシェルスクリプトです。 /usr/bin/gstack 指定したプロセス(マルチスレッドの場合は全スレッド)のスタックトレースを表示します monit の例 # /usr/bin/gstack... 続きを読む
GHC でスタックトレース - あどけない話
Haskellこれまで GHC では、スタックトレースを取ることが有効なデバッグ方法ではなかった。なぜなら遅延評価では、(再帰であってもなくても)末尾呼び出しは単なるジャンプになるから、スタックを使わないのである。スタックに戻る場所を積むのは、case と of の中で評価される式だけだ。(つまり、ここは正格に評価される。)この問題を解決するために GHC 7.4.2 から、わざわざスタックにログ... 続きを読む
jQuery 1.9 のソースマップ対応で圧縮版でもデバッグが簡単になった話 - てっく煮ブログ
jQuery 1.9 がリリースされました。1.9 の新機能の中ではあまり注目されていませんが、ソースマップに対応したのが地味に便利そうです。 というのも、圧縮版の jquery.min.js を使っていると 何か問題が起きたときにスタックトレースを眺めても jQuery の部分が意味不明 デバッガーで jQuery のソースにステップインしても意味不明 といった理由で、開発中には非圧縮の jqu... 続きを読む
Google Japan Blog: C++ のプログラムのデバッグを楽にする方法
2009年 4 月 13 日 Posted by google-glog team Google が公開しているソフトウェアの解説シリーズ(→その1 , その2)の続きです。今回は google-blog を使ってスタックトレースを表示する方法についてご紹介します。 C++ でプログラムを書いているとよく遭遇するのがセグメンテーション違反というエラーです。不正なアドレスへのアクセスなどによりセグメ... 続きを読む
IT戦記 - JavaScript で簡単にスタックトレースを取るテクニック
javascriptFirebug を使うと console.trace(); これだけでスタックトレースを取ることが出来ます。 でも、XUL の開発とか、人のブラウザで Firebug が入ってない時とかは出来ないので、そういう時は、 alert(Error().stack); これだけで出来ます。まあ Firefox only ですが。 続きを読む
いやなブログ: 普通のやつらの下を行け: C でバックトレース表示
普通のやつらの下を行け: C でバックトレース表示 普通のやつらの下を行けの第2回として、今回は glibc の関数を使って C でバックトレース (スタックトレース) の表示を行ってみます。 バックトレースとは バックトレースとは、大ざっぱに言うと、現在の関数に至るまでの道筋です。たとえば、次の Ruby プログラムを実行すると、 1 / 0 の行で例外が発生して、バックトレースの表示とともにプ... 続きを読む