SharePoint トレースログの内容、保存場所、関連ログ

SharePoint開発Tips : 2013.04.22 Monday

SharePoint トレースログの概要

SharePointで何か起きたら、トレースログ(ULSトレースログ、統合ログシステム トレースログ)に事象(エラー、情報)が書き込まれます。

トレースログに出力されるログ内容は多岐に渡ります。トレースログに書き込まれる「何か」には、SharePointからデータベースへの書き込みエラーやタイマー(OWSTIMER)実行時のエラー、SharePointユーザーインターフェイスでの「操作ミス」、PowerShellの「入力ミス」などがあります。

開発者は、トレースログAPI を使ってトレースログに独自のログを書き込めます。
システム管理者(および開発者、運用担当者)は、PowerShellのGet-SPLogEventなどを使用してトレースログを参照したり、必要なログだけフィルタリングしたりできます。

開発者ダッシュボードを使えば、トレースログが表示できます。

SharePoint トレースログの場所、ファイル

トレースログは、標準ではSharePoint Hive(¥Program Files¥Common Files¥Microsoft Shared¥Web Server Extensions¥14)のLOGSフォルダに格納されます。

トレースログを格納する場所(フォルダ)は、[サーバーの全体管理]-[監視]-[診断ログの構成]で変更できます。


トレースログのファイル名は、「コンピュータ名-年月日-時分.log」という形式です。既定では 30分に1ファイル作成され、ログファイル作成時の日時がログファイル名になります。

SharePoint トレースログの出力内容

トレースログの1レコード(1行)には、事象の発生日時(Timestamp)、プロセス名(Process)、エリアとカテゴリ(Area,Category)、レベル(Level)、詳細メッセージ(Message)などがあります。

事象の発生日時(Timestamp)は、PowerShellのGet-SPLogEventを使って表示すると...時分秒だけが表示されてしま いますが ちゃんと列名(Timestamp)まで指定すると、年月日時分秒が表示されます。

プロセス名(Process)は、トレースログを出力したプロセス名で、タイマーの場合「OWSTIMER.exe」、SharePointユーザーインターフェイスの場合「w3wp.exe」、PowerShellの場合「PowerShell.exe」または「PowerShell_ise.exe」です。

エリア(Area)は、SharePoint Foundation、Web Content Managementなどです。カテゴリ(Category)は、エリアごとに異なり General、Taxonomyなどがあります。

トレースのレベルは、論理チェックに失敗した非定型の状態をあらわす Unexpected、問題をあらわす Monitorable、優先度の高いイベントを表す High、個別機能の成功/失敗メッセージ Medium、開発者のデバッグメッセージ VerboseとVerboseExがあります。

イベントのレベルは、重大なエラーですぐに対処が必要な Critical、すぐに対処は不要なエラー Error、重大なエラーにつながる可能性のある警告 Warning、管理者に提供する情報 Informationがあります。

トレースログを見る場合、まず始めに レベルで Critical、Exception、Unexpectedのログがないかをチェックしましょう。

SharePoint トレースログと関連のあるログ

トレースログで問題(レベル:Critical、Exception、Unexpected)を検出した場合、同様のログがWindowsイベントログにも登録されます。

SharePointシステムの監視をおこなう場合は、トレースログではなくイベントログで監視した方が、他のエラー等も網羅できるので便利かもしれません。

トレースログの問題が、SharePointユーザーインターフェイス(操作)によるエラーの場合、IISログを参照し、該当時刻にどのようなWebアクセスがあったかを解析する必要があります。

トレースログの問題が、DeadLockなどのSQL Serverに関するものの場合、SQL Serverログを参照したり、SQL Server管理ツールでデータベース状態などの確認が必要です。

PowerShellのログ

SharePoint管理者操作を簡易にするために PowerShellでSharePonintのサイト、リストなどを作成したり、参照したり...とScriptを作って実行すると、実行は問題ないのですが ULSシステム トレースログに以下のログが出力される場合があります。

プロセス名PowerShell.exe
エリアSharePoint Foundation
カテゴリGeneral
レベルUnexpected
メッセージDetected use of SPRequest for previously closed SPWeb object.Please close SPWeb objects when you are done with all objects obtained from them, but not before.

「SPWebオブジェクト(SharePointサイトの情報を格納しているオブジェクト)は、実行前ではなく すべての実行後にクローズしてください。」というメッセージなのですが、心当たりがありません...。Scriptで SPWebのDisposeをちゃんとおこなっていても エラーがでます。

シンプルなPowerShell Scriptコードでも、このエラーが出てしまいます。TechNetやMSDNのサンプル通りにScriptを書いているのですが(^-^;;;
このエラーにより、SharePointサイト情報を格納しているメモリ解放がうまくいかず、サーバーのメモリを無駄に消費したままになる...のですが、サーバーのメモリがある下限を超えると、ガベージコレクションが走り、不要なメモリを解放してくれるので、「動作が重くなる可能性はあるが、システムがダウンすることはない」エラーです。

このエラーが出るパターンには、SPWebのプロパティを変更しているパターン(例:サイトのロゴ、サイドリンクバー有効化)、SPWebからリストを取得しているパターン(例:TryGetListメソッド)、SPWebのSharePointグループ関連のアクセスパターン(例:SiteGroupsのAdd)などがあります。
サードパーティ製の市販製品でも、このエラーが発生してたりもします。

システムダウンは起きない、他の製品でもエラーが出ている・・・とは言っても、直せるものならば直したいですよね。
解決策としては、トレースログでメッセージから StackTraceの「場所」を手掛かりに Scriptの該当箇所を探し出し、その近辺を「Start-SPAssignment」「Stop-SPAssignment」で囲うことです。(TechNetの説明では...) Start-SPAssignmentは 新しい割り当てストアの開始、Stop-SPAssignmentは 割り当てストアの終了です。簡単にいえば、SPWebなどのオブジェクトに割り当てられるメモリの確保/破棄です。

(改善前) SharePointサイト情報を取得し、サイドリンクバーを無効化しています。

(改善後) 改善前のコードを Start-SPAssignmentとStop-SPAssignmentで囲っています。

Start-SPAssignmentとStop-SPAssignmentのオプションには、単純な割り当てを意味する 「-global」を指定しています。

大雑把にPowerShellスクリプトのメイン処理を、SPAssignmentで囲むと...残念ながら PowerShell実行途中でエラーとなってしまいます。
SPWebを取得してから、色々な処理を行っている場合、処理自体をシンプルに バラバラにして、SPAssignmentで囲う必要があります。



【最近の投稿記事】



SharePoint Online
Office 365/SharePoint Online事始め,ライセンス
Office 365やるってよ |  MSサイトでプランを勉強 |  TechNetでプランを勉強 |  E5プラン | 
Office 365/SharePoint Online関連の書籍
できる Office 365 |  誰でもできる! Office365導入ガイド |  ひと目でわかる SharePoint Server 2016 |  Office 365 ビジネス活用28の事例 |  Office 365 サイトカスタマイズ&開発編 |  ひと目でわかる PowerApps |  ひと目でわかる Azure Information Protection | 
Office 365製品、サービス
sway, cortana, delve |  Office Online制限 |  SharePoint 2016 RC |  アーキテクチャ |  Connections, Listings, Invoicing |  Microsoft 365 Roadmap | 
SharePoint Online リスト/ライブラリ(クラシック)
標準 リスト/ライブラリ |  アンケート(Survey) |  画像ライブラリ |  ニュースフィード |  日英サイト間でリストデータ移行 |  ライブラリ ドラッグ&ドロップ |  ライブラリ ファイル一覧出力 |  リスト外観変更 |  Explorer URL |  ディスカッション掲示板 |  注目リンク |  OneDrive 通知メール送信 |  OneDrive バージョン履歴 |  アイテムはレコードです |  イベントのエクスポート |  既定ビュー破損 |  バージョン管理の改悪Update | 
SharePoint Online Webパーツ(クラシック)
標準 Webパーツ |  スクリプトエディタ |  RSSビューア |  フィルタWebパーツ |  XsltListViewWebPart |  グラフ表示パーツ |  サイトフィード(ニュースフィード)データ出力 | 
SharePoint Online リスト/ライブラリ/ページ(モダン)
ドキュメントライブラリ(Preview) |  複数ファイルダウンロード |  リスト・ライブラリ切替有無 |  ナビゲーション |  サイトのロゴ |  コマンドバー |  リスト ビュー |  リスト フォーム |  ホームページ設定 |  列の書式設定(Column Formatting) |  Seattle から Oslo そして Modernへ |  Webパーツページの管理は使えない |  サイドリンクバーの有効化 |  Webブラウザ幅に応じた表示 |  ページ タイトルと画像 |  ページ コピーとメール送信 |  リストビュー Filter |  ページのコメント |  モダンを強制する方法 |  リンクの取得(制限付きリンク) |  発行用ハイパーリンク列はモダンで動かない |  ビュースタイル |  モダン/クラシック混在設計のコツ |  モダン ナビゲーション設計 |  選択肢の追加不可 |  お知らせ表示の方法 |  SharePointページ |  集計値列の日付表示不正 |  いいね! コメント 表示回数 |  ナビゲーションの要素 |  ビューのカラム間隔 |  フォルダ名の禁則文字 |  連絡先,案件管理,DataSheetView形式カスタム |  あとで読むために保存(Save for later) |  UPLOADメッセージ |  ビューの書式設定 |  リストアイテムの印刷 |  2回目のニュース投稿 |  タイトルの領域 | 
SharePoint Online Webパーツ/テーマ(モダン)
サイトページ作成とWebパーツ一覧 |  リスト、ライブラリ |  埋め込み |  ファイルビューア― |  リンク |  クイックリンク |  画像ギャラリー |  強調表示されたコンテンツ |  ヒーロー(Hero) |  クイック グラフ (Quick chart) |  テキスト(Text) |  画像 (Image) |  外観の変更 テーマ |  イベント(Events) |  クイックリンクの順番入替 |  Webパーツが大幅に減少!? |  外観の変更 |  リストWebパーツ不具合 |  クイックリンクのアイコン |  クイックリンクのレイアウト |  画像ギャラリーのレイアウト |  ドキュメントのチェックアウト表示 | 
SharePoint Online サイト(モダン)
サイトメールボックス |  標準 サイト |  サイトコレクション機能 |  サイト情報 |  サイトテンプレートの運用 |  サイトの訪問者 |  サイト情報のサイト削除リンク |  チームサイトテンプレート |  コミュニケーションサイト テンプレート |  ハブサイト |  モダンUIスキャナー |  サイト・リスト構成 | 
SharePoint Online 検索機能
検索の対象 |  検索されたくないファイル |  注目サイト |  検索結果カスタマイズ | 
SharePoint Online 外部共有
外部ユーザー共有 |  外部共有サイト、外部ユーザー |  外部ユーザー削除 Remove-SPOExternalUser |  外部ユーザーの定義とライセンス付与の要否 |  共有の設定オプションが増えた |  サイトコレクション共有設定 | 
SharePoint Online 移行
Notes情報表示 |  Notesデータ移行 |  Sharegateインストール |  Sharegateファイル移行 | 
SharePoint Online カスタマイズ
IE11開発者ツール |  Osloとの戦い |  Style動的変更 |  リダイレクトページ |  IEとChrome |  ボタン名の変更 |  フロー Flow |  注目リンク カスタマイズ |  アンケート 列設定 変更 |  アンケート Excelエクスポート項目 変更 |  ダウンロード禁止のアクセス許可レベル | 
SharePiont PnP PowerShell
PnPの概要 |  テナントバージョン取得 | 
SharePiont Online 動作仕様
制限値が気になる |  記憶域とサーバーリソース |  プロファイル画像 |  IsDlg効かず |  プレゼンス表示 |  利用状況レポート |  データ容量管理 |  ごみ箱の日数 |  サイドリンクバー |  直打ちURL |  ユーザープロファイル |  Access app 廃止 |  アクセス要求の設定 |  ページリンク、クラシック表示を終了 |  お知らせタイルとエクスペリエンスバージョン |  クォータ警告と共有設定を一括取得 |  SharePoint Online 10 GB/User増量 |  SharePoint管理センター |  アクセス要求の設定 |  ファイルアップロードの宛先ライブラリ |  SharePoint管理センター Preview |  データ移行ツール |  サイトページ機能 |  SharePointホームページ |  管理者の業務範囲 |  記憶域の管理 |  クォータの増量要求 | 
SharePiont Online 不具合
Webページ破損 |  サイトコレクション削除 |  おすすめ エラー |  外観変更エラー |  プロジェクトサイトテンプレート ProjectSummaryWebPartエラー |  発行インフラストラクチャー機能 Trouble |  ダウンロード最小化戦略の問題点 |  日時がSeattle時間になる問題 |  サイトコレクション削除後の保存期間 | 
Office 365 動作仕様
OneDrive概要 |  OneDrive設定 |  OWAエラー画面 |  新しい Office 365管理センターUI |  Office 365メッセージ |  OneNote同期/ファイル |  Office 365サイト |  Office 365監査ログ |  Project Web App |  機能更新とエラー画面 |  Outlook Webのメッセージ |  Office 365 ホーム |  OneDrive削除アクティビティメール |  Projectホームページ |  Teamsチームサイトのアクセス権限 |  O365管理センター メニュー |  ASPX,HTMLファイル表示差異 |  Teamsデスクトップクライアント設定 |  Office Online自動保存と自動編集 |  Microsoft Search |  OneDriveページパラメータ |  SharePoint+Teams+O365グループ | 
search this site.
SharePoint概要
SharePointとは?
アーキテクチャ
サイトテンプレート
リストテンプレート
Webパーツ
アクセス権限
SharePoint用語集


SharePoint構築Tips
リスト名(URL)
ライブラリ名(URL)
フィールド名(内部名)
ビュー名(ファイル名)
リストテンプレート
(ワークフロー削除)

大きなリストの問題
アイテム一覧の列幅
機能とWebパーツ
フィールドデータ型
禁則文字
隠しリスト表示
管理パス
サイト内の列
サポート期限
PDFをブラウザで開く
URLエンコード・デコード
日時の絶対値表示
エクスプローラーで開く
パブリック・個人用ビュー
ひと目でわかるOffice 365ビジネス活用28の事例 SharePoint Server 2016対応版 (マイクロソフト関連書)

SharePoint開発Tips
開発の概要
開発者ダッシュボード
MSDN URL
RESTインターフェイス
ページパラメータ IsDlg
ビジュアルアップグレード
機能(Feature)
2010開発者向けの資格
2013開発者向けの資格
ページパラメータ contents
リソースファイル
リスト/ライブラリGUID
テーマ
トレースログ
PowerShell文字コード
SharePoint Framework
ひと目でわかるOffice 365サイトカスタマイズ&開発編 SharePoint Server 2016対応版

SharePoint情報サイト
Tech community(SharePoint)
SharePoint Developer Center
Support Team Blog
SharePoint Developer
SharePoint Technical Note
ILLUMINATE JAPAN Blog
Office365うるのさん奮闘ブログ
AvePoint Japan Community
idea.toString();
SharePoint Issue
Office365/SharePoint
からめもぶろぐ。
Office 365 & PowerX
徒然 Office 365 WebLog
SPeed LAND 365
Art-Break:Tech
ひと目でわかる SharePoint Server 2016




ひと目でわかるPowerAppsノンコーディングでのビジネスアプリ作成入門 (マイクロソフト関連書)


   風水吉凶方位 |  奇門遁甲 |  金運神社 |  金運本 |  水族館 |  仏像 |  論語 |  般若心経 |  庭園 |  二十四節気 |  菜根譚 | 
   SharePoint活用 |  OneNote活用 |  サーバー監視 |  イベントログ |  IT資産管理 |  技術TIPS