アーカイブ

Archive for the ‘インフラ’ Category

Docker for Windows のエッジ版にもKubernetes入った?

お家の環境のDockerが更新されたんだけれど、設定画面にKubernetesの文字が、ちゃんと勉強しなきゃ。。。
キャプチャ.PNG

いや、それ以前にネットワークの調子が悪くてアップデート後にDockerが上がらない、、、Reset to factory defaultsで初期化してあげたらこんな画面が
キャプチャ2.PNG
ログにはこんなのが出てた。

[23:32:49.292][NamedPipeClient][Error ] Unable to send Start: Unable to create File System Image
[23:32:49.292][Notifications ][Error ] Unable to create File System Image
[23:32:49.291][NamedPipeServer][Error ] Unable to execute Start: Unable to create File System Image 場所 Docker.Backend.ContainerEngine.Linux.DoStart(Settings settings, String daemonOptions) 場所 C:\gopath\src\github.com\docker\pinata\win\src\Docker.Backend\ContainerEngine\Linux.cs:行 244
場所 Docker.Backend.ContainerEngine.Linux.Start(Settings settings, String daemonOptions) 場所 C:\gopath\src\github.com\docker\pinata\win\src\Docker.Backend\ContainerEngine\Linux.cs:行 109

ちょい下にはこんな警告も

[23:32:49.326][CrashReport ][Warning] Unable to collect features settings: ファイル ‘C:\Users\karua\AppData\Roaming\Docker\features-overrides.json’ が見つかりませんでした。
[23:32:49.320][VpnKit ][Warning] Unable to download logs: 操作がタイムアウトしました。

広告
カテゴリー:インフラ, Docker

PowerShellでgit logから統計情報を取得する。

2017年9月23日 1件のコメント

Git-Hubだとダッシュボードからプロジェクトに対するコミット数やら追加・削減したライン数なんかが見えるんだけれど、BacklogなんかのGitをつかっているとそういったものがない。

で、git logのオプションを使えば、そのあたりの情報が取れるよってのを教えてもらったので、それっぽいものを書いてみた。

確認したいリポジトリに移動したあと、このスプリクトを実行すると、こんな感じに表示されます。個人のリポジトリだとつまらない、、、

キャプチャ

Git-Hub使っている人には需要はありませんが、git logのオプションがいろいろ見れて楽しかったです。いくつか見たけれど、git logのヘルプページが一番参考になりました。

https://git-scm.com/book/ja/v2/Git-%E3%81%AE%E5%9F%BA%E6%9C%AC-%E3%82%B3%E3%83%9F%E3%83%83%E3%83%88%E5%B1%A5%E6%AD%B4%E3%81%AE%E9%96%B2%E8%A6%A7

 

カテゴリー:Git, PowerShell, 未分類 タグ:

ARRのスナップインはWindows Server 2012 R2の管理ツールには表示されない。

時たまサーバーを一気に作る機会があって、以前作った手順書を更新しながら作業しているんですが、OSのバージョンが変わるといろいろ変わってくるところもあります。

以前Windows Server 2008 R2 IIS7.5 と Tomcat 7をARRで連携という記事を投稿しましたが、Windows Server 2012 R2で同じことをやろうとしたらちょっと、、、大分ハマったのでメモ。

あれ?どこ行った?

ARRをWebPIからインストールして、さあARRの設定を!!と思ったら、管理ツールにApplication Request Routing Cacheのアイコンが見当たらない。。。

 

イベント・ログを見るとこんなログが、、、あれ?これ以前見たこと有るぞ?ということでARRを手動でインストールしたけれど、状況は変わらず、、、

IISMANAGER_MODULE_INITIALIZATION_THREW_EXCEPTION

型 "ApplicationRequestRouting" のモジュール "Microsoft.Web.Management.Arr.ArrModule, Microsoft.Web.Management.Arr.Client, Version=7.2.4.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" の Initialize メソッドが例外を発生させました。

例外:System.IO.FileNotFoundException: ファイルまたはアセンブリ ‘Microsoft.Web.Management.WebFarmClient, Version=7.1.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35’、またはその依存関係の 1 つが読み込めませんでした。指定されたファイルが見つかりません。
ファイル名 ‘Microsoft.Web.Management.WebFarmClient, Version=7.1.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35′ です。’Microsoft.Web.Management.WebFarmClient, Version=7.1.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35’
   場所 Microsoft.Web.Management.Arr.ArrModule.Initialize(IServiceProvider serviceProvider, ModuleInfo moduleInfo)
   場所 Microsoft.Web.Management.Client.Connection.Initialize(WebManagementInfo webManagementInfo)

そっちか!!

Webで似たような事例を探してたら、、、

http://forums.iis.net/t/1159733.aspx?Problems+in+locating+ARR

For the record, this is still broken in IIS8 / ARR 3.0; the Application Request Routing Cache element does not show up in the "Computer Management" MMC window for IIS, but DOES show up in the separate application Internet Information Services (IIS) Manager console.

管理ツールのにスナップインされたIISマネージャーだと表示されないので、個別で表示してみろとのお告げが!!

いた!!

カテゴリー:IIS タグ: ,

dotTrace 6.0, dotMemory 4.2のリモートエージェント

以前dotMemory4.0のリモートプロファイリングについて記事を書きましたが、dotTrace 6.0やdotMemory 4.2ではRemoteAgentの場所が変わっているので探してしまいました。

dotTrace5.*やdotMemory 4.0, 4.1の場合、各プログラムのインストーロフォルダーにRemoteAgentフォルダーがあるのでそれを利用します。例えば下記の場所に有るはずです。

  • dotTrace 5.5: %ProgramFiles(x86)%\JetBrains\dotTrace\v5.5\Bin\Remote
  • dotMemory 4.1: %ProgramFiles(x86)%\JetBrains\dotMemory\v4.1\Bin\Remote
    dotTrace 6.0やdotMemory4.2では、インストーラーが一新された影響で、プログラムの一式が%ProgramFiles(x86)%ではなく、%LOCALAPPDATA%にインストールされるようになったためこんなパスにZIPファイルとして配置されているはずです。
  • dotTrace 6.0:%LOCALAPPDATA%\JetBrains\Installations\dotTrace01\RemoteAgent.zip
  • dotMemory 4.2:%LOCALAPPDATA%\JetBrains\Installations\dotMemory01\RemoteAgent.zip

dotTraceやdotMemoryのコンソールからリモートエージェントに接続する方法はこれまでと変わりありません。dotTraceの場合、上記のZIPファイルへのショートカットのリンクがあるので、ここからもリモートエージェントのフォルダーを参照することができます。

image

プロファイル対象のプログラムを指定するUIと、プロファイリング中のスナップショットを取得したり破棄したりするUIがガラッと変わっていますね。

image image

dotMemory を利用してリモートコンピューターのメモリープロファイリングを行う

2014年4月25日 3件のコメント

JetBrainsが販売しているdotTraceやdotMemoryといったプロファインリググツールは、パフォーマンスチューニングやメモリー関連の不具合の調査に欠かせないツールですが、こいつらはローカルだけでなくリモートのコンピューターに対してもプロファイリングを行うことができます。

今回はdotMemoryでリモートサーバーのASP.NETプログラムのメモリープロファイリングを行う方法を紹介します。

リモートプロファイリングに関してはdotMemoryのオンラインヘルプに記述があるので合わせて確認してみてください。

dotMemory Web Help > Profiling Process > Starting Remote Profiling Process

http://www.jetbrains.com/dotmemory/webhelp/Starting_Remote_Profiling_Process.html

image

1.プロファイリング用のエージェントを対象のコンピューターにコピーする。

dotMemoryのインストールディレクトリにあるRemoteフォルダーをプロファイリング対象のコンピューターの特定フォルダー(c:\dotMemory\Remoteとか)にコピーします。dotMemoryを標準インストールで入れた場合、Remoteフォルダーはココにあると思います。

%ProgramFiles(x86)%\JetBrains\dotMemory\v4.0\Bin\Remote

image

2.リモートコンピューター側でエージェントを起動する。

管理者権限のあるユーザーでプロファイリングを行いたいPC(or サーバー)にログインし、先ほどコピーしたRemoteフォルダーにあるRemoteAgent.exeを起動します。実行すると下記のURLでプロファイリング用のWebサービスがホストされます。環境によってはファイアーウォールの警告が出るのでRemoteAgentを例外に指定してあげてください。デフォルトでは下記のURLがリモートエージェントによってホストされます。

http://<server&gt;:9000/RemoteAgent/AgentService.asmx

ホストするサービスのポート番号などを変えたい場合は、RemoteAgent.exeをコマンドプロンプトから実行し、コマンドラインスイッチに/pや/port=VALUEを指定してエージェントを起動します。

エージェントが受け入れるスイッチの一覧はRemoteAgent.exe /hで確認できます。

image

3.dotMemoryからリモートプロファイリングを開始する。

dotMemoryをインストールしたPCから先ほどリモートエージェントを起動したPCに対してリモートプロファイルを開始します。dotMemoryを起動し、IIS Applicationのプロファイルを開始してください。

image

プロファイルの設定ダイアログが表示されるので、Profile on remote computerのリンクをクリックして、リモートコンピューターで起動したRemoteAgentのURLを指定します。

image image

エージェントの接続設定が成功したら、Runボタンをクリックしてプロファイルを開始します。

image

4.スナップショットをとって、長期間保存されているメモリーを確認してみる。

プロファイルが開始されたら、右上にあるGet Snapshotボタンをクリックして現在のメモリー状況のスナップショットを取ります。Memory Snapshotsに作成したスナップショットの一覧が表示されるので、確認したいスナップショットを開きHeaps FragmentationのDetailsリンクをクリックしてみましょう。

image image

スナップショットで収集したオブジェクトが表示されます。Group by Generationsでは、世代ごとに確保しているオブジェクトのサマリーを確認できます。LOHのグラフをダブルクリックして、Call Tree Icicle Chartを表示すると、LOHに確保されたオブジェクトを確認することができます。

image image

便利なのでいつのまにやら、jetBrainsの.NET関連ツールはひと通り個人で揃えてしまいました。。。出費が痛い。

TFSブランチガイド

ここ2年ほど開発してきたシステムがちょっと前にリリースされました。早速新機能の開発が保守と同時に走り始めました。ソースコードのブランチなんて切らないほうが絶対にいいんですが、そうとも行っていられないのでブランチを作成することに。

TFSでブランチを計画する際にまず目を当したいのが、下の長澤さんのブログで紹介されているTeam Foundation Server 2010ブランチとマージガイドです。TFS 2012は使ったことが無いのですが基本的な考え方は変わらないのでこれでフォローできるはずです。ソース管理にGITなんかを使っていると変わってくるのかな??

分岐ガイドのメインドキュメント(TFS_Branching_Guide_Main_2010_v1.pdf)を読む前に、シナリオのポスター(TFS Branching Guide – Scenarios 2010_20100330.pdf)を見るとわかりやすいです。

とりあえず標準分岐計画を元に分岐シナリオを考えることにします。

カテゴリー:TFS タグ:

TFS Everywareでエラーが出たけれどメッセージが読めない。。。

そんなこんなで、EclipseでC言語を利用した開発なんてのをやっているわけですが、EclipseからTFSのリポジトリーにシェルブしようとしたら、こんなダイアログが表示されてシェルブすることができませんでした。

文字化けして読めない。

image

TFSから帰ってきた文字のエンコーディングが予期したものではなかったのが原因なんだろうけれど、対処方法を調べるのがめんどくさいので、おもむろにFiddlerを起動してTFSとの通信を覗いてみる。

Eclipseからの通信をFiddlerで拾うには、Eclipse側のProxy設定を変更する必要があります。Eclipseのウインドウ→設定→一般→ネットワーク設定から、手動プロキシー構成を選択し、Fiddlerの通信ポートを設定します。

image

Fiddlerの通信ポートがわからない場合は、Fiddler側のTool→Fiddler Option→ConnectionsにあるFiddler listens on portがそれです。

image

で、通信をキャプチャーしてみたらこんなのが表示された。どうも、最新バージョンを取っていないのが問題らしい。そういえばTFSのソース管理オプションで、最新ソースを取っていないとチェックインできない設定にした覚えがある。

image

最新を撮り直して、コンフリクトを解消したらちゃんとシェルブ出来ました。

#だれか、TFS Everywareからのメッセージボックスエンコードの設定方法知教えてください。

メモ:Eclipse 対応 Team Foundation Server プラグイン

カテゴリー:プログラミング, メモ, TFS タグ: ,