タグ

デバッグに関するWackyのブックマーク (6)

  • 伝わりやすい不具合報告の書き方 #Zaim|akatsuki174

    はじめにこんにちは。Zaim で iOS エンジニアをしている @akatsuki174 です。 バグ報告ってどんな情報をどこまで渡せばいいのかの加減がうまくつかめず、意外と難しいですよね。会話の往復が増えると、タイムロスしたり、ちょっと険悪なムードになりかねません。 そこで、いちエンジニアの立場から「こんな風に言ってもらえると嬉しいよ!」という話をしようかと思います。ただ、あくまでもこれは一例です。プラットフォーム、会社などによっては別のことを伝えた方がいい場面もあるかと思うので、「こんな記事あったんだけれど、うちではどんなコミュニケーションが最適なんだろう?」と社内に問いかけてみてください。 絶対に伝えてほしいこと発生環境 具体的に言うと OS、OS のバージョン、ブラウザの種類、ブラウザのバージョン、スマホの機種、アプリのバージョン、実行環境(番/ステージング etc)などがこれに

    伝わりやすい不具合報告の書き方 #Zaim|akatsuki174
  • Linux:パフォーマンスに影響あるデバッグオプションがどれだけ影響あるか試してみた - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ

    なんとなくやってみた系ですね。 今回はCONFIG_DEBUG_OBJECTSのところです。 CONFIG_DEBUG_OBJECTS_FREEがkmalloc/kfreeをヘヴィにつかうような場合にパフォーマンス劣化するよーなんていってます。 まずはCONFIG_DEBUG_OBJECTSの項目を全部無効にした場合。 この時点でもロック周りに時間取ってますね。 hackbenchを引数 10 process 20000 で実行してる時の様子がこんな感じです。 次にCONFIG_DEBUG_OBJECTSの項目を全部無効にした場合。 起動した時点でかなりの時間をロックで使ってます。 そして、hackbenchを同じく実行するとこうこうなります/(^o^)\ このときはこんな感じになっていてもうどうにもならない感がありますね。 説明に書いてあるとおり、ほんと遅くなりますね。 ( ´ー`)フゥ

    Linux:パフォーマンスに影響あるデバッグオプションがどれだけ影響あるか試してみた - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ
  • ユーザのブラウザで起きた JavaScript のエラーを収集する - Qiita

    なぜエラーを収集するのか バグ探し バグを見つけて潰していくため ユーザからのバグ報告の補助 ユーザに報告の負担をかけないため エラーを取得する 取得タイミング window.onerror Promise のエラー フレームワーク毎の特定のタイミング window.onerror window.onerror にメソッドを登録しておくことでエラー発生時にそのメソッドが呼ばれる。try-catch でハンドリングしていないエラーが流れてくる。

    ユーザのブラウザで起きた JavaScript のエラーを収集する - Qiita
    Wacky
    Wacky 2018/03/10
    “window.onerror にメソッドを登録しておくことでエラー発生時にそのメソッドが呼ばれる。try-catch でハンドリングしていないエラーが流れてくる。”
  • Big Sky :: net/http でレスポンスの内容を確認したいなら io.TeeReader を使おう

    « Golang で物理ファイルの操作に path/filepath でなく path を使うと爆発します。 | Main | VimConf2017 に参加してきた。 » printf デバッグは便利だ。技術の後退と言われようと printf でないと解決できない事はまだまだたくさんあります。 今日は net/http でクライアントが得たレスポンスの JSON を確認したいといった場合に、どうデバッグしたらいいかを書いてみたいと思う。 Go のインタフェースは大よそ io.Reader もしくは io.Writer を使う様に設計されている。こうする事でプログラムがメモリを一度に沢山確保してしまわない様にしています。 package main import ( "encoding/json" "fmt" "log" "net/http" ) type Foo struct { ID  

    Big Sky :: net/http でレスポンスの内容を確認したいなら io.TeeReader を使おう
  • GDBでPython scriptを実行する

    最近(少なくともversion 7以降)のGDBは、Python scriptを実行できます。実行には、従来のGDBマクロと同じくsourceコマンドを使用します。 早速、試してみましょう。次のようなPython scriptを用意します。 $ cat hello.py #!/usr/bin/env python import sys sys.stdout.write('Hello, my first script.\n') GDBを起動して、実行します。 (gdb) source hello.py Hello, my first script. Python scriptからのGDB機能の利用 次に、Python scriptからGDBの機能を使用する例を紹介します。gdb.execute()関数を使用すれば、GDBのコマンドラインで行う操作を実行できます。 サンプルのデバッグ対象として

    Wacky
    Wacky 2017/07/20
    “上記の例では、通常のGDBコマンドを実行するだけでしたが、この出力をPythonの文字列として取得してみましょう。これは、gdb.execute()関数のto_string引数にTrueを渡すことで実現できます。”
  • Effective Debugging

    数々の人気の技術書の著者として、さらには数多くのオープンソースの開発や教育活動で名高いコンピュータ科学者ディオミディス・スピネリスの最新刊。心構えから思考法、Gitなどシステムを使った方法論、システムの開発から保守運用に至る戦略、並列処理も含めた技法、コマンドラインを駆使したツール、ハードの扱いまで含めたヒントなどさまざまな角度からデバッグの質に迫ります。有効なデバッグ手法を体系的に網羅し、すぐに応用できる具体例も多く挙げられています。デバッグの感覚とスキルを高めることによって、開発効率を改善し、高品質のコードを書くことが可能となります。作業効率と品質を向上させたい全プログラマ必読の一冊です。 日語版まえがき まえがき 1章 高水準戦略 項目1:あらゆる問題を課題管理システムで扱う 項目2:問題に対する洞察を得るにはウェブで焦点を絞って検索する 項目3:前条件と後条件が満たされているこ

    Effective Debugging
  • 1