このフォーラムは終了しました。ご投稿いただきありがとうございました。他の場所でヘルプを入手する場合は、リソースページにアクセスしてください。 MSDN and TechNet are approaching retirement. Link your MSDN/TechNet accounts to your Learn Profile for continued recognition of your contributions. Read linking instructions .
qira ./a.out QIRA is a timeless debugger. All state is tracked while a program is running, so you can debug in the past. Install it now. Linux required, 64-bit Ubuntu recommended. cd ~/ && wget -qO- https://github.com/geohot/qira/archive/v1.3.tar.gz | tar zx && cd qira-1.3 && ./install.sh b *0x8048446 Your breakpoint was hit 5 times, at change 90, 111, 128, 145, and 162. I drew red lines in the vt
1. qiraとは qiraとは世界的なハッカー、George Hotz氏 (ジョージ・ホッツ - Wikipedia) によって開発された高機能バイナリトレーサーであり、qiraという名は(QEMU Interactive Runtime Analyser)の略である。 GitHub - BinaryAnalysisPlatform/qira: QEMU Interactive Runtime Analyser 略語を見れば分かるがuser mode QEMUを使用したバイナリ解析ツールであり、ELFなどの実行形式バイナリを実際に動作させて各命令のレジスタ、メモリへの操作を逐次記録する。 これらの記録はweb UIを通して好きな命令位置にカーソルを移動させるだけで見ることができ、その時のレジスタ、メモリの記録が再現される仕組みになっている。ソフトウェアのデバッグやCTFにおけるバイナリ解
目次 初めに 極小理論 ステップ1. 問題の再現と確認 ステップ2. 最低3回のヒートダンプ採取 ステップ3. 問題の発見 ステップ4. 問題解決の確認 他のリソースへのリンク まとめ Something you might want to bookmark: Simple Guide to Finding a JavaScript Memory Leak in Node.js by @akras14 https://t.co/oRyQboa8Uw — Node.js (@nodejs) January 6, 2016 注釈:お気に入りに登録してください。 Simple Guide to Finding a JavaScript Memory Leak in Node.js (Node.jsでのJavaScriptメモリリーク発見簡単ガイド) @akras14 http://www.ale
Google グループでは、オンライン フォーラムやメール ベースのグループを作成したり、こうしたフォーラムやグループに参加したりすることで、大勢のユーザーと情報の共有やディスカッションを行うことができます。
技術部の国分 (@k0kubun) です。 先日byebugの高速化を行っていた最中、変更を加えたbyebugを使っていると一定の確率でrubyがSEGVするバグを発見しました。 私はC言語のコードのデバッグの経験はなかったのですが、デバッガの使い方を調べながらSEGVの原因調査を行いパッチを送ったところ無事取り込まれ、最新の高速なbyebugが安全に使えるようになりました。 その際、ruby自体をデバッグするために必要な情報が分散していて大変だったので、まだrubyのデバッグをしたことがないけれどやってみたいという人を対象に、gdbというデバッガを使ったrubyのデバッグの方法を紹介します。 デバッグ用にrubyをビルドする デバッグ時に変数名やソースコードなどの情報を見るためには、最適化オプションをオフにしてデバッグ用にrubyをビルドしておく必要があります。 rubyのデバッグ用ビル
byebugとpry-byebugのbundle updateをしましょう byebugはRails標準でインストールされるRuby 2.1, 2.2向けのデバッガで、pry-byebugはpry *1 にデバッガの機能を追加するpryのプラグインです。 一昨日から今日にかけて、以下のパフォーマンス改善を含む byebug v8.0.0 と pry-byebug v3.3.0 がリリースされました。 github.com github.com byebugとpry-byebugには、一度byebugやbinding.pryを叩くとそれ以降ずっとアプリケーションの挙動が10倍遅くなるという問題がありました。 これが上記の変更により改善されたので、 Railsアプリやgemのデバッグにbyebugやpry-byebugを利用している方はそれらのbundle updateをおすすめします。 bi
こんにちは、ミドルウェア開発チームの青木(@a_o_k_i_n_g)です。将来の夢は川口浩探検隊に入ることです。 先日、弊社のアプリケーションサーバーで大量にメモリを消費するという現象に遭遇しました。アクセス頻度の低いサーバーがメモリを大量消費するという謎深いものでした。 発生当初の状況はこんな感じです。 アプリケーションサーバーでは Jetty が稼働 現象が発生した JVM は 5GB 程度のメモリを消費しており、明らかに通常ではない量のメモリを消費している 複数台のサーバーで発生していたが、全てで発生したわけではない。 また、発生したサーバーはいずれもアクセス頻度が少ないサーバーだった。 ヒープ、パーマネント、スタック ひとまず、JVM でトラブルが発生した時は何はともあれヒープダンプとスレッドダンプを見るに限ります。各種情報の取得をインフラ部隊へ依頼し、得られたヒープを解析すると、
はじめに この記事はPryのコミッターであるkyryloが書いたso-what-is-binding-pry-exactlyを訳したものです。日本語訳の公開を快く許可してくれたkyryloに感謝します。 Pryの使い方で一番最初に習うのは、“binding.pry”だと思います。この言葉をあちこちに埋め込むことで、幸せになれます。簡単にいうと、“binding.pry”を使うことで、日々の生活がだいぶ楽になります。あなたは“binding.pry”が何者なのか、不思議に思ったことはありませんか? 細かいことなので気にならなかったことだと思います。私がPryを使い始めたときは、これをおまじないの一種と考えました。“binding.pry”は不思議な魔法のようにみえたのです。魔法などでないことは、確かです。しかし、新しいことを学ぶとき、実際より不思議に思えてしまうことはよくあることです。この記
概要 IntelliJ IDEA 13 (または RubyMine) と rdebug-ide の組み合わせで Ruby on Rails のIDEデバッグ環境を構築する。 大事なこと ブレークポイントを張れること ステップ実行できること コールスタックが参照できること 変数内容が参照できること 作業環境の前提 コーディング・デバッグは Windows7 上の IntelliJ IDEA から行う。 ブラウジングは Windows7 上の Chrome から行う。 サーバは Windows7 上の VirtualBox 内 CentOS にて立ち上げる。 IntelliJ IDEA 13.0.1 Ruby 2.0.0p353 Ruby on Rails 3.2.13 ※ Windows7 を MacOS なんかと置き換えても同じ手法が使えると思う。 リモート? VirtualBox だしリ
gdbperl.plというスクリプトがあります。そんkする樋口証さん作の、gdbを操作してPerlのプロセスのバックトレースを取るツールです。生きているプロセスだけではなく、coreを取っておけばそのcoreからバックトレースが取れるのが特徴です。 gcoreというコマンドが/usr/binあたりにあって、これを使えば走っているプロセスのcoreを取得することができます。よって、本番環境で気軽にcoreを取ってgdbperl.plにかけることによって、刺さっているポイントを見つけたりすることができます。超便利。 くわしくは、Perlスクリプトをgdbでデバッグを参照ください。 んで、その便利なgdbperl.plをRubyに移植してみました。その名もgdbruby.rb。単純。 gdbruby.rb 使い方とか Rubyはデバッグシンボル付きのものをご用意ください。 生きているプロセスにア
アセンブラで遊ぶ時に便利な ~/.gdbinit を紹介します。まず ~/.gdbinit を次のように記述してください。 # # ~/.gdbinit # # .so を shlib コマンドで手動で読み込む # set auto-solib-add 0 # スレッド生成時のSIG32でブレークしない handle SIG32 nostop # ニモニック構文の選択 # set disassembly-flavor intel set disassembly-flavor att # フラグレジスタの可読化関数 define pf printf "eflags: %s%s%s%s%s%s%s%s%s (= 0x%08u)\n",\ $eflags & 2048 ? "O":"-",\ $eflags & 1024 ? "D":"-",\ $eflags & 512 ? "I":"-",\
Acroquest Technologyは2013年7月11日、Javaシステムの内部動作を可視化・診断するソフトウエア「ENdoSnipe Ver.5.0」をオープンソースとして公開したと発表した。Ver.4まではプロプライエタリな製品だった。ダウンロード・サイトおよびGitHubのページからダウンロードできる。 新版の診断機能には、同社が提供するJavaシステムのトラブルシューティング・サービス「JaTS」での障害解析のノウハウを組み込んだという。アプリケーションの性能を監視する機能も追加した。従来版はEclipseプラグインとしてユーザーインタフェース(UI)を実現していたが、新版はWebベースのUIに変更されている。 診断機能では、メモリリークやハングアップリスク、非効率なデータベース・アクセスなどを検出する。プロファイラやデバッガとは異なり、問題が発生する具体的な理由まで指摘でき
開発の効率を大きく向上してくれるgem Pryをさらに使いこなすための便利なコマンド19個をまとめてみました。標準のコマンドをしっかり理解してPryの使いこなしを目指します! (04/16 20:55) オススメの記事を追加その2 🎃 オススメ記事Pry の簡易的なコマンドまとめ Pryの設定ファイルや、関連Gemの簡易的なコマンドをまとめてくれている記事。この記事をひととおり読んだあとに、設定をいじると捗るかも! Rails4 今のところ最強なデバッグツール達 開発やテスト環境で使っているGemfileの紹介。pryについてもかなり丁寧に書かれています! Ruby 2.1の基本構文/基本文法まとめ&Pryの使い方 オープンソースのオブジェクト指向プログラミング言語「Ruby」の文法をゼロから学ぶための入門連載。 🐞 (1) helphelpはコマンドの一覧と英語での説明を表示してくれ
Reveal (http://revealapp.com/) なる iOS 向けのランタイムインスペクタなるものを知人のツイート経由で見つけた。ランタイムインスペクタとは何か ・・・ "Reveal brings the power of tools like Firebug and Web Inspector to iOS developers." ということでiOS アプリ用の Firebug みたいなのだと思えば良い。 動画を観てると確かにすごい。3D で動かしながら View の階層を手繰ってアプリのビューがどういう構造になっているかを見ていくことができる。更に動的にパラメータを変更して大きさや動きを変える、なんて Firebug の css の編集みたいなこともできるようだ。ベータ版は無料のようだ。 これは捗る。 RubyMotion で動かす ドキュメントを見てみたところ Re
Translation(s): none initramfs-tools is used in Debian to build the initramfs that contains the early userspace and the needed kernel modules to be able to mount any possible root. Boot To fix wrong fs recognition work around boot with rootfstype=<rootfstype>In releases older than Debian 8 (jessie), it may be necessary to add a delay for disks to be discovered before setting up RAID and LVM. Boot
平素よりQA@ITをご利用いただき、誠にありがとうございます。 QA@ITは「質問や回答を『共有』し『編集』していくことでベストなQAを蓄積できる、ITエンジニアのための問題解決コミュニティー」として約7年間運営をしてきました。これまでサービスを続けることができたのは、QA@ITのコンセプトに共感をいただき、適切な質問や回答をお寄せいただいた皆さまのご支援があったからこそと考えております。重ねて御礼申し上げます。 しかしながら、エンジニアの情報入手方法の多様化やQAサービス市場の状況、@ITの今後のメディア運営方針などを検討した結果、2020年2月28日(金)15:00をもちましてQA@ITのサービスを終了することにしました。 これまでご利用をいただきました皆さまには残念なお知らせとなり、誠に心苦しく思っております。何とぞ、ご理解をいただけますと幸いです。 QA@ITの7年間で皆さまの知識
This job shouldn’t be taking this long! That’s not a great thing to have to say, is it? However, I bet you’ve said it before and may not have immediately know why. With liberal use of puts and maybe pry, you can figure out what a problem might be next time you run it, but sometimes you need to figure out what that problem is right now. As it turns out, and I know this is a shocker, Ruby processes
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く