RSS

カテゴリー別アーカイブ: Office 365

OneDrive for Business の Troubleshooting の基本

こんにちは。久しぶりの Blog 更新です。

ちょうど 1 年前の Advent Calendar に書いて以来ってことは。。。来年は、もうちょっと頑張ります。

さて、Microsoft を 11 月に卒業し、KonicaMinolta Inc. で働き始めたわけですが、早速 SharePoint Online も使い始めています。今回は、私が OneDrive for Business のサポートをしていた時に基本的な問題の切り分けに使っていたトラブルシューティングの基本的なところを、おさらいしておきたいと思います。

OneDrive for Business で問題が発生して、サポートへ連絡する前に、これらの情報を抑えておいてもらえると、サポート側としてはスムーズに対応ができるので、お互いに Happy になれるかと。。。

容量について

既定では、1 TB。以下の PowerShell コマンドで、まずは 5 TB まで引き上げられる。 5 TB 以上必要な場合はサポートへ連絡。

>Set-SPOTenant –OneDriveStorageQuota <QUOTA (単位は MB)>

上記、設定後、既存の OneDrive のサイトにも反映させるには、以下のように実行。

>Set-SPOSite –identity <site URL> –StorageQuotaReset

ODB_StorageMgmt

また、以下のコマンドで、OneDrive サイトの詳細を確認できます。

>Get-SPOSite –identity <siteURL> –Detailed | select *

容量関係の情報だけ確認したい場合は、”Storage*” で選択するとわかりやすです。

>Get-SPOSite –identity <siteURL> –Detailed | select Storage*

OneDrive アクセス時に 404 エラーや関連付けID (Correlation ID) が表示される場合

404 エラーや関連付け ID が表示される場合は、Fiddler で問題再現時の Log を取得しましょう。Fiddler についてはまた詳しく紹介できればと思っています。

  1. Fiddler を起動させるとすぐに HTTP 通信のキャプチャが始まるので F12 を押して、ストップさせます。
  2. ツールバーの [X] ボタンから “Remove all” で、取得したログを消しておきましょう。
  3. そのままだと、Office365 で使われている HTTPS 通信のキャプチャーができないので、[Tools] – [Telerik Fiddler Options] を開き、”HTTPS” タブの [Decrypt HTTPS traffic] にチェックを入れます。
  4. すると、Trust the Fiddler Root certificate? と聞いてくるウィンドウが表示されるので、[Yes] をクリック。FiddlerOption
  5. さらにセキュリティ警告とともの、証明書をインストールしますか?と聞かれるので、[はい] をクリック。
  6. 通常は、すべての Process の HTTPS 通信をキャプチャーしてしまうので、必要なプロセスのみに絞るために、[(+)Any Process] とあるボタンをドラッグして、OneDrive を表示させているサイトへドラッグします。
  7. これで準備完了です。F12 キーを押して Capturing モードにして、問題を再現させます。

問題を再現させた後、エラーが表示されたプロセスをクリックして、Inspectors で Response Headers を確認します。Miscellaneous に記載されている SPRequestGuid の値が関連付け ID (Correlation ID) となります。SharePoint Online の場合はサポート エンジニアのみが、この関連付け ID を使って ULS Log を確認できますので、エラー内容が表記されていない場合、問題を特定するためにはこれらの情報 (Fiddler Log) をサービス リクエストと一緒に送付しましょう。また、Colleration ID は古いものだとマイクロソフトのサポート側でもログが取得できない場合があります。できる限り最新のログを送付しましょう。

CorrelationID

問題が再現したタイミングの Process がわかりにくい場合は、スタート ボタンから “PSR” と入力して “ステップ記録ツール” を起動させて、記録させた状態で Fiddler を起動し、問題を再現させれば “ステップ記録ツール” の情報から問題発生時刻を確認して Fiddler ログと照らし合わせることができます。

また、エンドユーザーとかに、もっと簡単に Fiddler のログだけとりあえず取得させたい場合は、FiddlerCap が便利です。

OneDrive の Log など

OneDrive の Log などは、以下に保存されています。

%USERPROFILE%\AppData\Local\Microsoft\OneDrive

  • 17.3.6***.**** というバージョン番号の書かれているフォルダーには各言語ごとのリソースファイルが入っていたりします。
  • セットアップで何か問題が発生していないかなどを確認するには、上記の中の “setup” 内の [Logs] フォルダーに、.log ファイルが保存されています。
  • また、設定の構成情報やポリシーは、”Settings” 内の [Business*] フォルダーに、global.ini (構成情報)、ClientPolicy.ini (動作ポリシー情報) として記載されています。
  • “Logs” 内にある、各フォルダー内などにある、.odl や .etl ファイルには、同期時のトランザクションが記録されています。これらのファイルの内容は特殊なツールが必要になりますので、同期時の問題でできる範囲のトラブルシューティングで解決しない場合は、これらを zip などで圧縮してサポートへお問い合わせいただくと、初動が早くなるかと思います。

その他にも、アプリケーションとしてのエラーを見る場合は、eventvwr (イベント ビューアー) などでエラーが出ていないかを確認したり、することもあります。個人的には、個人用の OneDrive と同期ツールが一緒になったタイミングの NGSC (Next Generation Sync Client) と呼ばれるバージョンになったぐらいから、かなり問題は少なくなってきていると思います。

問題解決の時間短縮を図る場合は、上記のような基本的な情報を確認しておき、サポートへ問い合わせの際はこれらの内容を伝えられるようにしておくと、スムーズに解決できると思います。

最後に、トラブル シューティングに活用できる、公開されている KB やオンライン サポートのページを紹介しておきます。

最新版の OneDrive のダウンロード先 (最新版の OneDrive がインストールされているかどうかも確認できる)

企業などエンタープライズ環境での新しい OneDrive 同期クライアントの展開

  • Business アカウントを既定にするとか、展開ツールはこちら
  • グループ ポリシーとレジストリを使って、管理設定をする方法についてはこちら

KB3125202 新しい OneDrive for Business 同期クライアントを使用してファイルおよびフォルダーを同期する際の制限事項

その他の OneDrive 関連の Link

広告
 
コメントする

投稿者: : 2016-12-10 投稿先 Office 365

 

タグ: ,

PowerShell を使って、Office 365 で利用しているすべてのサイト コレクションの使用容量を表示する

この投稿は、PowerShell Advent Calendar 2015 に参加しています。

久しぶりに技術系の Blog の連続で、Program Manager 時代を思い出しながら、記事を書いてます。。。

今回は PowerShell に関する内容ということで、私が仕事でよく聞くちょっと困ったことを、PowerShell を使って確認できるようにしてみたいと思います。

困ったこと、というのは Office 365 で利用できる記憶域のことになります。

詳細は、下記に紹介する Link 先を参照いただきたいのですが、Office 365 を購入するとテナントあたりのデフォルトの容量 10GB + ユーザー数 x 500 MB + ボーナス容量 が、割り当てられます。

どのくらい利用しているか?のざっくりとした容量は SharePoint 管理センターで確認できますが、Office 365 グループで使うサイト コレクションの記憶域は、SharePoint Online にプールされた記憶域から自動的に利用されるため、SharePoint 管理センターのサイト コレクションの情報を見る限りは問題なさそうなのに、テナントとしては、容量がもうギリギリいっぱいまで使われてしまっている、といった状況に陥ることも少なくありません。

しかし、Office 365 グループのサイト コレクションは、SharePoint 管理センターに表示されないため、どこでどのくらいの容量が使われているのかを把握するのは難しいです。
そこで、以前 フォーラムに、次の記事を投稿させていただいましたが、これを一発で表示させる PowerShell スクリプトを作成してみましたので、お試しいただければと思います!

Office 365 フォーラム: Office 365 グループのサイト コレクションの使用容量の確認方法

使い方

  1. Get-AllSPOSitesInfoJ.ps1.txt をダウンロード
  2. ファイルをメモ帳などで開き、次の個所を自分のテナント用に書き換えて上書き保存します。
    # SharePoint 管理センターの URL
    $AdminURI = ‘https://<テナント名>-admin.sharepoint.com

    # テナントの Office 365 Global 管理者のアカウントと、パスワードを設定します。
    $AdminAccount = “テナントの管理者のアカウント
    $AdminPass = “テナントの管理者のパスワード

  3. 適切なところにファイルを置いて、拡張子 .txt を取り除き、Get-AllSPOSitesInfoJ.ps1 にします。
  4. スタート メニューから Windows PowerShell を探し、右クリックして、管理者権限で実行します。
  5. >cd c:\users\<ユーザー名>\document と、手順 2. で置いたところをディレクトリを指定します。
  6. PS c:\users\<ユーザー名>\document > Get-AllSPOSitesInfoJ.ps1 と入力して実行
  7. 途中 WARNING が出ても無視して OK です。
  8. すると下記のような感じで出力が終わります。

Get-CommandResult

結果の表示

最初に SharePoint 管理センターから確認できる サイト コレクションの一覧が、Title、Url、StorageUsageCurrent (現在の使用容量: 単位 MB)、StorageQuota の情報と共に出力されます。

そのあと、Office 365 Groups で使われているサイト コレクションが、同じ情報をもって表示されます。

フォーラムにも書きましたが、SharePoint Online 管理 Shell には、Office 365 のサイト コレクションの情報を得るためのコマンドがないので、Exchange Online の Get-UnifiedGroup で抽出し変数 $o365GroupsInfo に格納して、#o365GroupsInfo[0].SharePointSiteUrl で URL を取得して、Get-SPOSite を –Detailed オプションつけて使用容量 (StorageUsageCurrent) を取得してます。

Get-SPOSite コマンドは、通常では -Detailed オプションつけなくても、StorageUsageCurrent の情報が入ってくるのですが、Groups のサイト コレクションに対しては、-Detailed オプションつけないと出てこなかったですね。もちろん、本来は TechNet に書かれているようにつける必要があるのですが。。。余談でした。

参考 Link

あんまりきちんとテストしてないので、至らないところもあるかと思いますが、フィードバックいただければ、善処いたします!また、オプションで、個人用サイトも表示できるようにとか、レポート出力も実装していきたいですね。

*12/18 追記。変数の値を ” (ダブル クォート) で囲ってしまってたので、’ (シングル クォート) にサンプルを変えました。
パスワードの $ とか入ってたら、うまく動作しなかったですね。。。

 
コメントする

投稿者: : 2015-12-17 投稿先 Office 365

 
画像

Office 365 インポート サービスを使ってファイルをライブラリに一括転送

この投稿は Office 365 Advent Calendar 2015 に参加しています。

SharePoint Online にデータをアップロードする際、Explorer View などの手作業も個人の場合はアリですが、大規模な既存のネットワーク共有システムからの移行であれば、Office 365 インポート サービスを使えば、スクリプトを組むなりすれば、手動でやるよりも楽に移行ができます。

TechNet のちょっとわかりにくい? Office 365 インポート サービスの使い方の基本をなるべくわかりやすく、手順をそのまま追うだけで実施できるようにしてみましたので、参考にしてください。
また、機会があれば、他のシナリオについても追加していく予定です。

今回のシナリオ

  • PC のドキュメントに [2015年のドキュメント] フォルダーがある。
  • このフォルダー内には、多数のファイルやサブフォルダーが存在する。
  • Office 365 インポート サービスを使って、サブフォルダー込みで、一括で チーム サイトのドキュメント ライブラリーに転送する。

事前に準備しておくこと

大まかな手順の概要

  1. SharePoint Online Management Shell で、SharePoint Online に接続
  2. Azure Blob Storage へ接続するための “アカウント キー” と “ネットワーク アップロード URL” の確認
  3. SharePoint Online Migratioin パッケージの作成
  4. SharePoint Online に Upload するコンテンツ パッケージに変換
  5. Azure Blob Storage にパッケージをアップロード
  6. マッピング ファイルをアップロード
  7. ファイル転送のステータスを確認

Step-by-Step での手順

SharePoint Online Management Shell で、SharePoint Online に接続

  • Office 365 インポート サービスを利用する時は、ブラウザーからの管理画面からのアクセスと共に、SharePoint Online Management Shell という PowerShell ベースの管理 Shell を使います。
  • まずは、起動からです。
    1. スタート メニューから “SharePoint Online Management Shell” を探し、右クリック メニューから [管理者として実行] をクリックします。
      管理者として実行しないと、必要なモジュールをインポートする時に、アクセス権がなく、モジュールが見つからない、といったエラーが出ます。
    2. 初めて PowerShell を実行する時は、スクリプトを実行できるように PowerShell が構成されているか、ポリシーを確認するために次のコマンドを入力します。

      > Get-ExecutionPolic

    3. “Unrestricted” とか “RemoteSigned” 以外が表示されたら、このポリシーを次のコマンドで変更します。

      >Set-ExecutionPolicy RemoteSigned

    4. すると、本当に変更してもいいの?みたいなことを聞いてくるので、”Y” を入力して Enter を押します。
  • 次に、管理者アカウントを使って、SharePoint Online に接続します。
    1. 次のように入力します。

      > Connect-SPOService -Url https://<テナント名>-admin.sharepoint.com -Credential <テナント管理者のアカウント>

    2. 実行すると、サインイン画面がでてくるので、パスワードを入力して [OK] ボタンをクリックします。
      O365Import_SPOMgmtShell002

Azure Blob Storage へ接続するための “アカウント キー” と “ネットワーク アップロード URL” の確認

  • Office 365 インポート サービスでは、Azure Blob Storage と呼ばれる、一時的にデータを格納しておけるステージング領域に、データを含むパッケージをアップロードしてから、テナントのパフォーマンスの状態をみながら、指定した場所にファイルをコピー (インポート) します。
    この Azure Blob Storage に接続するために必要な、”アカウント キー” と “ネットワーク アップロード URL” を次の手順で確認します。

    1. ブラウザーから、Office 365 管理センターを開きます。
    2. Office 365 管理センターの左メニューから、[インポート] をクリックすると、”Office 365 へのファイルのインポート” 画面が表示されます。
    3. 画面内の + ボタンをクリックし、プルダウン メニューから [ネットワーク経由でファイルをアップロードする] をクリックします。
    4. “ネットワーク経由でのファイルのアップロード” の新規ジョブ ウィンドウが新たに開くので、そこから次の情報を入手して、メモ帳などにコピーして控えておきます。
      1. “セキュリティ保護記憶域アカウント キーのコピー” から “キーの表示” をクリックします。
      2. “セキュリティで保護されたネットワーク アップロード URL をコピーします。” から “SharePoint/OneDrive for Business ドキュメントの URL を表示します” をクリックします。O365Import_SPOMgmtShell003

SharePoint Online Migratioin パッケージの作成

  • 続いて、SharePoint Online のチーム サイトのライブラリへ移行したい ファイルとフォルダーをまとめたパッケージを作成します。
  • 先に以下に必要な情報をまとめておきます。
    • 移行元のファイルの場所 : C:\Users\<ユーザー名>\Documents\2015年のドキュメント
    • パッケージ化したファイルを保存する場所 : C:\FirstPackage
  • 今回はローカルにあるファイルをパッケージにしますので、SharePoint Online Management Shell を使って次の手順を実施します。

> New-SPOMigrationPackage -SourceFilesPath C:\users\<ユーザー名>\Documents\2015年のドキュメント -OutputPackagePath C:\FirstPackage (-NoADLookup)

Tips!  – 利用している PC が AD ドメインに参加してない場合、本来このコマンドは AD ドメイン上の共有からの移行を前提としているためパッケージ化を実施する際に、権限の確認のため LDAP サーバーにアクセスします。LDAP サーバーにアクセスできない場合は、エラーが出力されます。ご利用の PC がドメインに参加していない場合でエラーが表示される方は、-NoADLookup オプションをつけてください。

SharePoint Online に Upload するコンテンツ パッケージに変換

  • 次に、作成したパッケージを、移行させたいパッケージのファイルが元のファイルと一致しているかどうか、移行先のサイト コレクションとライブラリの確認を行って、最終パッケージに変換します。
  • コマンドを実行する前に、以下の情報をまとめておきます。
    • 移行先のサイト コレクション URL とライブラリ名の確認
      1. 移行したいチーム サイトにアクセスし、画面右上の歯車アイコンから [サイトの設定] をクリックします。
      2. サイトの設定画面から、サイトの管理項目内の “サイトのライブラリとリスト” をクリックします。
      3. “ドキュメントのカスタマイズ” をクリックし、ドキュメントの設定画面をみると、Web アドレスの情報が下記のように表示されています。
        O365Import_TeamSite001
      4. https://<テナント名&gt;.sharepoint.com の部分が、移行先のターゲット URL になり、<ライブラリ名> (画像では “Shared Documents” の部分) が、移行先のターゲット ライブラリになります。
    • 最終パッケージの保存先を作成しておきます。 (今回は仮に C:\FinalPackage )
  • 情報がそろったら、次のようにコマンドを入力します。

> ConvertTo-SPOMigrationTargetedPackage -SourceFilesPath C:\Users\<ユーザー名>\Documents\2015年のドキュメント -SourcePackagePath C:\FinalPackage -TargetWebUrl https://<テナント名&gt;.sharepoint.com -TargetDocumentLibraryPath “Shared Documents

  • コマンド実行後、再度サインイン画面が出てくることがあるので、その際は管理者アカウントとパスワードで再度サインインしてください。

Azure Blob Storage にパッケージをアップロード

  • いよいよ、最終パッケージをオンライン上の Azure Blob Storage にアップロードします。
  • コマンドを実行する前に、以下の情報をまとめておきます。
    • -SourceFilesPath -> 元のファイル・フォルダーへの Path。 C:\Users\<ユーザー名>\Documents\2015年のドキュメント
    • -SourcePackagePath -> 最終パッケージ変換後のファイルの Path。 C:\FinalPackage
    • -AccountName -> 手順 2. で控えておいた “セキュリティで保護されたネットワーク アップロード URL の赤字部分 ( 例: https://12ab34567c890de1f23gh4i.blob.core.windows.net/ )
    • -AccountKey -> 手順 2. で控えておいた “セキュリティ保護記憶域アカウント キー”
    • -FileContainerName  -> あとで使うマッピング ファイルの入力に必要なので、任意の値で OK。以下の例では “TeamFiles” と入力してあります。
    • -PackageContainerName -> package と入力 (あとで使うマッピング ファイルの入力に必要なので、任意の値で OK。以下の例では “TeamPackage” と入力してあります。
  • 情報がそろったら、次のようにコマンドを入力します。

> Set-SPOMigrationPackageAzureSource -SourceFilesPath C:\Users\<ユーザー名>\Documents\2015年のドキュメント -SourcePackagePath C:\FinalPackage -AccountName 12ab34567c890de1f23gh4i -AccountKey xxxxxxxxxxxxxx== -FileContainerName TeamFiles -PackageContainerName TeamPackage

マッピング ファイルをアップロード

  • 最後に、マッピング ファイルをアップロードして、データのインポートを開始します。
  • マッピング ファイルは、単純な CSV 形式のファイルで、TechNet のサイトにあるとおりですが、こちらにサンプル ファイルを置いておきます。
  • マッピング ファイルで入力が必要な項目と値は次の通りです。
    • Workload -> SharePoint
    • SPFileContainer -> TeamFiles
    • SPManifestContainer -> TeamPackage
    • SPSiteUrl -> https://<テナント名&gt;.sharepoint.com
  • Office 365 管理センターの [インポート] に戻り、Office 365 へのファイルのインポート画面から、[ネットワーク経由でのファイルのアップロード] をクリックして開き、次の手順でマッピング ファイルをアップロードします。
    1. “*ファイルのアップロードを完了しました” にチェックを入れます。
    2. “*マッピング ファイルにアクセスできます” にチェックを入れます。
    3. [次へ] ボタンをクリックします。
      O365Import_MapFile001
    4. 名前を入れて、[次へ] ボタンをクリックします。(今回はこんな感じの名前にしました。teamsitedoc-20151215)
    5. マッピング ファイルのアップロード画面で、+ をクリックして、作成した csv ファイルを選択し、”*このボックスをオンにすると、同意したことになります使用条件*このサービス” にチェックをいれ、[完了] ボタンをクリックします。
      O365Import_MapFile003
  • これで、Azure Blob Storage (ステージング領域) から、マッピング ファイルに従って、データがチーム サイトのドキュメント ライブラリにインポートされます。

ファイル転送のステータスを確認

  • Office 365 管理センターの [インポート] をクリックして、Office 365 へのファイルのインポート画面を開きます。
  • 先ほどアップロード したマッピング ファイルが表示され、ステータスに状態が表示されます。
  • “インポートしています” の状態から “完了” になりましたら、右ペインの ”詳細の表示” をクリックして、インポートが成功したか失敗したかを確認できます。

*インポートしたファイルは、更新者が “システム アカウント” として保存されています。

ファイル転送が失敗した場合は、マッピング ファイルの記述や、パッケージ化した時の URL の指定などが間違っていないかのチェックのほかに、Azure Explorer などを使って、エラーの詳細情報を見ることができます。
これについては、またいずれ。。。

参考 Link

 
コメントする

投稿者: : 2015-12-15 投稿先 Office 365