DWA - Fiddler を使ったリクエストログの取得

2009年11月06日 00:15

今日は最近出たDWA関連の以下のTechnoteの話をしようと思います。

DWA 問題判別:リクエストログの取得と解析

DWAの調査では問題判別の際に発生時のHTTPリクエストログが必要になる事があります。
UI上の操作よりも実際に送られたリクエストが思わぬ再現条件を提供したり、色々な動作が明らかになってくる事が多いからです。

これはDominoの機能を使うと以下の技術文書で紹介されているようなリクエストログの取得が必要になります。

Domino 6:HTTP リクエストログの仕様について

しかし、特定のブラウザクライアントの操作で起こる問題でサーバー全体に及ぶ設定を行うのはテスト環境ならともかくとして、現実的ではないことが多くあります。
このような場合はやはりブラウザ側にしかけるリクエストログの取得ツールをお願いすることがあります。

例えばIBMは以下のようなIBM Page Detailer と言うツールもalphaWorksで公開したりしていますが、Free版だとSSLで使えないなど機能制限も多いため、苦労する事も多くありました。

IBM Page Detailer(alphaWorks)

操作性やログの見易さ、機能のシンプルさもあり、Proxyとして動作する以下のようなツールもよく使っていました。秀丸の作者が作っているツールですがこれも非常に便利だと思います。

横取り丸

このようにサポートでは色々なツールを使用していた経緯もあるのですが、今回発行した技術文書では以下のような点を考慮してFiddlerを使った取得について詳細に説明しています。

・ SSLやFirefoxのサポート
・ Fileupload Controlなどのログが取れる
・ 解析機能やログの取得も比較的容易
・ Web関連のDebugツールとしてGlobalでも認知度が高い

導入やログの取得などもそれほど負担にならずにProxyのOn-Offも自動で切り替えてくれるので非常にこの辺は使いやすくなっています。Firefoxもアドオンを入れれば自動切換えをしてくれます。

文書では単純にログの取得方法だけでなく、簡単な見方も紹介しているので是非DWAの問題判別だけでなく、Fiddler自体に興味がある方も一読して頂ければと思います。

developerWorks: Lotus Domino と物理メモリの関係

2009年11月05日 00:15

今日はこの記事の紹介をしようと思います。

developerWorks: Lotus Domino と物理メモリの関係 〜AIX 32ビット編〜

プラットフォームに限らず仮想メモリと物理メモリにまつわる混乱はサポートではよくあるお問い合わせの一つです。

・ タスクマネージャーで表示されるドミノの各タスクのメモリ利用量を足すと物理メモリより多いのはなぜ?
・ 4GBの制限と言うが、うちは物理メモリを8GB積んでいてWindows上では問題なく認識されていますが・・
・ Windowsではユーザー空間は2GBしか使えないと聞いたが4GBの制限と言うのは間違い?
  (3GBスイッチの話は置いておきましょう。。)

資料にもある通り、これらの混乱はあらゆる場面で「メモリ」の一言で言われてしまう、仮想アドレス空間、仮想メモリ、物理メモリ、と言う言葉の概念を丁寧に整理していくと見通しが格段によくなります。
この上でプロセスヒープ、スタック領域、共有メモリなどの概念を乗せてみると、プログラマから見えるメモリと、OS上で見えるメモリの概念がつながってくるんじゃないかな、と思います。
 この辺の話は製品知識やプログラミング知識だけでは片付かない話ですので、一度勉強し損ねるとなかなか整理して教わる機会が無いので「実は詳しくないかも・・・」と思っておられるベテランの技術者の方もこっそりダウンロードして自習してみてください。

AIX ユーザーに限らず有用なトピックですし、何より読みやすい形にまとめて頂いているのでそれほど気合を入れなくても読めるのでお勧めの内容です。

スタンダード版の起動が遅いと思う方は試してみてください

2009年11月04日 00:10

各種アンチウイルスソフトをご利用の方も多いと思いますが以下のようなお話をご存知でしょうか。

Notes client startup performance is slow when JAR files are set to be scanned by anti-virus

要はリアルタイムスキャンのような機能を持っているソフトではJarファイルを対象外にしておいたほうが起動時のパフォーマンスが向上する、と言うお話です。
たとえばSymantec だとファイルシステムのAuto Protectで除外設定が出来ますがここでJarファイルを対象外にしたり、Notesのプログラムディレクトリ直下にあるFrameworkディレクトリ(スタンダード版)を対象外にしておくと同様の設定になります。

これはBasic版ではあまり意識しなくてよいと思うのですがStandard版の起動が遅いな、と思う方は一度試してみてください!

C API はnnotes.dllから呼ばれている

2009年11月02日 00:19

- バックナンバー -
1. OSLoadProgramを呼んでみるサンプル
2. OSLoadProgramのサンプルを理解する
3. C API はnnotes.dllから呼ばれている

そろそろ8.5.1を使う予定がない人は8.5.1の新機能紹介の記事に飽きてきているかもしれないので、今日は通常の記事に戻っていきたいと思います。

さて、LotusScriptからC APIを呼ぶ方法ですが、前回はサンプルで読んだ「OSLoadProgram」のようにC APIの関数を呼ぶためにはまずC APIのリファレンスを入手する必要がある旨を説明しました。

Declare Function OSLoadProgram Lib "nnotes.dll" _
(Byval filename As String, Byval FileDir As String, Byval argv As String, flags As Integer) As Integer

LotusScriptでは外部DLLから関数を呼び出すときには、呼び出したい関数名(上の例ではOSLoadProgram)に加えてLib ステートメントでどのDLLから呼び出すかを宣言しないといけません。
サンプルではnnotes.dllから呼び出されていましたが、C API関数はどのようにしてDLLを調べればいいのでしょうか?

実はNotesのC API関数の場合、この点については悩む必要がありません。
Notes が使用しているDLLファイルは無数にありますが、C API関数として公開されているものは、Windowsプラットフォームであれば、全て nnotes.dllから呼び出されたものです。サーバーもクライアントも、NotesとDominoのコアと言えるデータベースやビューに関する処理はほとんどnnotes.dll でまかなわれているのです。

ただし、プラットフォームが違う場合は、名前が変わるのでバリエーションについては覚えておく必要があります。AIXであれば、libnotes_r.a、SolarisやLinuxであれば、libnotes.so のようなライブラリがnnotes.dllと等価のファイルになります。

詳細については以下の文書も参考にしてください。(OS/2が Inotes.dll、と言う事などは知りませんでした・・・)

What is the equivalent of nnotes.dll (W32) on a Unix system

まだ宣言文の説明も終わってない!と思う方も多いと思うのですが、引数や戻り値の型変換が説明として一番ややこしいのでその辺を後回しにしているうちにこんな感じになってしまっているので今しばらくお待ち下さい。。。

8.5.1 アーカイブの使用勝手の改善

2009年10月30日 00:13

 8.5.1のアーカイブのUI改善は以前にもこのブログで紹介しましたが、改めて紹介します。

始めにアーカイブのメールを開くと以下のように黄色く表示されてアーカイブDBであることが区別できるようになりました。
 加えて、ツールとかフォローアップとか不要なビューが消えているのも分かると思います。
(どちらもスタンダード版のみ)
アーカイブのアウトライン表示

「Recently Archived」と言うビューではアーカイブした日付でカテゴライズされた表示が行えるようになりました。
(スタンダード版のみ)
Recently Archived Folder


なお、メール文書もこのようにヘッダーでアーカイブのメールを見ているのかどうか区別できるようになっています。
メールの表示

アーカイブはメールを触っているのかごっちゃになってしまったり昨日までアーカイブしていなかったメールを探したりメールとの行き来で操作感が重要になりますが、その点はかなり改善されているのではないかと思います。

Lotus Notes/Domino 20th Anniversaryイベントの資料が一部公開されています

2009年10月29日 00:12

20周年記念イベントは出れなかったのですが、ケーキが出たり色々楽しそうだったみたいですね。
実際に出た方はどうだったのでしょうか?


イベントサイトでは講演で使用された資料が公開されているようですので行けなかった人も是非一度のぞいてみてください。

Lotus Notes/Domino 20th Anniversary and BEYOND

現在公開されている資料
- Lotus knows 「BEYOND」 (1.0MB)
- 基調講演:育ての親が語る、成人を迎えたLotus Notesの「これまで」と「これから」 (3.84MB)
- ビジネス・パートナー Lotus Notes/Domino ソリューションご紹介 (7.33MB)


個人的にはパートナー企業のソリューションが色々公開されていて、XPagesの利用がパートナーソリューションでも普及しているのが肌で感じられて頑張らないといけないなー、と思いました。

# Kevinの講演資料は英語なんじゃないかと思ったら日本語だったんですね。これはこれで我々には助かりますね。

他のブロガーの方の記事も是非読んでみてください。
(他にも色々あったと思うのですがあまり探していなくてすみません。。)

Notes20歳の誕生日イベントが開催されました (ソーシャルなつぶやき)
Notes20歳、愛されるプロダクトの条件 (コラボレーション・エンジニアの考える日々)


8.5.1 サイドバーへのドラッグ&ドロップ

2009年10月28日 00:12

8.5.1(スタンダード版)では、カレンダーのサイドバーへドラッグ&ドロップすることによってカレンダーエントリを作ることが出来るようになっています。

今日はそのお話をしようと思います。
始めにドラッグ&ドロップで時間まで指定するにはカレンダーエントリをタイムスロット表示にしておくと便利です。(要約表示では現在の時間になってしまいます。)

サイドバーのタイムスロット表示
タイムスロット表示

何か待ち合わせや招集の詳細を書いたメールが来たらそれを以下のようにサイドバーへドロップします。

サイドバーへのドラッグ&ドロップ
(画像はクリックすると拡大します)
カレンダーへのドラッグ&ドロップ

そうすると、以下のように新しいカレンダーエントリが出来ます。
件名: メールの件名
開始時間: ドロップしたタイムスロット上の時間帯
終了時間: 開始時間から1時間後
作成されたカレンダーエントリ(1)

メールの本文も「_______」のあとに挿入されます

作成されたカレンダーエントリ(2)

ブックマークバーに落としてもいいですが、こっちの方が時間が指定出来るので便利ですね。

8.5.1 : Lotus iNotesでのID Vaultの利用

2009年10月27日 00:16

 今日の新機能紹介は Lotus iNotes のID ボールト対応についてです。

iNotes/DWA はIDファイルを利用する事によって、暗号化や電子署名したメールが扱えるようになったり、S/MIME メールが送れるようになったり、通常のWebメールの範疇を超えた機能が使えるようになりました。ただし、これはユーザーがWebアクセスで意識する「インターネットパスワード」とIDファイルのパスワードの二重管理が必要になったり、せっかくWebクライアントにしているのに、エンドユーザーに効率よくIDファイルを管理者側で配布する方法がなかったりとID ファイルマネージメントには比較的課題が多かったのも事実です。 iNotesのIDボールト対応は、単純にNotesクライアントでも使える機能を使えるようにする、と言う側面だけでなく、そのような課題に応える、と言う意味でも意義の大きい拡張なのではないかと思います。

IDボールト環境を構築するには、大きく以下のステップが必要です。
もうちょっと細かいステップが知りたい方もいると思いますが、ちょっとここは簡単に説明します。
システム管理ヘルプでは「ID ボールトを作成する」と言う項目があるのでそちらを参照してください。
目次からたどる場合には、[セキュリティ]-[Lotus Domino Server ID と Lotus Notes ユーザー ID]-[Lotus Notes ID ボールト] をご確認下さい。

1. ボールトデータベースを管理クライアントから作成する
2. ポリシー設定からセキュリティーポリシーを作成し、IDボールトに関する設定を行う
3. ポリシー文書を作成し、2. で作成したセキュリティポリシーを作成する
4. 作成したポリシーを明示的ポリシーまたは組織的ポリシーとしてユーザーに適用する


Lotus iNotes上でID ボールトを使用する場合、セキュリティポリシーのID ボールトの設定で更に以下の設定が必要です。
セキュリティポリシーの設定

「Allow Notes-based programs to use the Notes ID Vault」 と言う設定をはいにする必要があります。

このポリシーが設定されたユーザーがログオンして、iNotesプリファレンスを開くと、セキュリティタブに以下のような設定が現れます。

ボールとの同期化ボタン

このボタンを使用すると、以下のようなことが行えるようになります。

・ メールDB上にIDファイルが無く、ボールト上に存在している場合、「ボールトと同期化」ボタンを使用してIDファイルをボールトからダウンロードする事が出来ます
・ メールDB上にIDファイルがあり、ボールト上に存在していない場合、「ボールトと同期化」ボタンを使用してIDファイルをボールトへアップロードする事が出来ます
・ どちらにもIDファイルが存在する場合、「ボールトと同期化」ボタンを使用してIDファイルをボールトと同期して最新の状態に保つ事が出来ます。

これで、Notesクライアントなどと混在していてもIDファイルの管理はかなり容易になるのではないかと思います。

8.5.1 : Search Center でNotes DBの検索リストを追加する

2009年10月26日 00:11

 今日はStandard版で使用できるSearch Center の拡張について紹介します。
Standardクライアントで使用できるSearch Centerでは、NotesクライアントからGoogleやYahoo! の検索が使用できるのですが、Webサイトの検索をNotesから行うメリットをあまり感じない方も多かったのではないかと思いますが、8.5.1 からは、ここにNotes のビューを検索一覧に加える事が出来るようになっていよいよ使い勝手がよくなってきました。

始めに該当ビューを開いているときに、以下のようにSearch Listを展開してみます。
ここで検索ビューの下に「Always Show in Search List」と言うのが表示されるのでそこをクリックします。
Always show in search list

Search List で登録する名前の入力が求められます。
デフォルトではDB名とビュー名が表示されますが、必要に応じて編集してください。

名前の登録


これでどのビューを開いていても登録したビューでの検索を行うことが出来るようになります。
リストの管理は、プリファレンス([ファイル]-[プリファレンス])から行います。
(画像はクリックすると拡大します)

Search List

Widgetでも同じ事が出来ますが、ずっと簡単に出来るのが分かるのではないでしょうか。
是非使ってみてください。

Lotus Notes 7.0.4 CCH2 がリリースされています

2009年10月23日 00:07

 7.0.4 が出てからしばらく経ちますが、7.0.4 CCH2が出ています。

Lotus Notes 7.0.4 - Cumulative Client Hotfix 2 (CCH2)

7.0.4 CCH2 はFix Centralから入手可能です。
CCH2 へのダイレクトリンクはこちらです。

CCH1 はBi-Di環境(右から左に書くような文字を使用する環境)での問題修正に特化したものでしたが、CCH2 では7.0.4の問題としてはかなりインパクトの大きかった以下の問題の修正が入っています。

カレンダーの要約表示ビューで日付と曜日のカテゴリが表示されない (文書番号 732937)

Notes 7.0.4 をご利用の方は一度是非確認してみてください。


最新記事