SCCMにてレポートを自動生成し、メールで送付する方法

SCCMにてレポートを自動作成して、メールで送付したいケースは結構あるものと思われます。 簡単な手順で実行できますので、そのやり方を紹介します。 まず、自動生成したレポートを探します。そして「サブスクリプションの作成」を行います。 ※目的にあったレポートが規定のレポート群から見つからない場合には、カスタマイズして作成するのも良いですね。 あとはこのウィザードをすすめていけばよいだけ・・・なのですが、結構な環境で配信方法に「Windowsファイル共有」しか存在しないのではないでしょうか。 SCCMのレポートおよびレポート配信は完全にSQL ServerのReporting Servicesの機能を利用しています。ですので、Reporting Services上でメール配信の構成を予め行っておく必要があります。 以下が、その構成方法が書かれているページです。 - 電子メール配信用のレポート** ****サーバーの構成 (Reporting Services)** 残念ながら英語のみですが…。 ここでは、別途SMTPを投げつけるとメールを送信してくれるSMTPサーバーがいる場合の設定を紹介します。 SQL Server 2014 Reporting Services構成マネージャーを起動します。 SCCMが利用しているレポートサーバーインスタンスに接続します。 「電子メールの設定」に適切な設定を入力して「適用」を押します。 これでレポートサーバーへの電子メールの設定が行われました。 再度SCCMサーバーでサブスクリプションを作成します。 レポート配信手段として「電子メール」も構成可能となりました。 適宜パラーメーターを埋めます。Toの部分が「終了」になってしまっているのはローカライズのバグですね…。 配信スケジュールを設定します。 レポートパラメータを決定します。 設定したサブスクリプションはReporting Serviceのレポートマネージャーサイトから確認出来ます。

2016年3月31日 · 2 分 · 胡田昌彦

PSTファイルの容量情報のレポーティング

クライアントが保持している特定のファイル形式の一覧と容量を調査したい…というニーズは結構あると思います。 ここではたとえば「ユーザーがローカルで保持しているPSTファイルの一覧と容量を調査する」という例でその実装方法を紹介したいと思います。 ### クライアント設定(ソフトウェアインベントリ) まずクライアント設定を作成します。規定のクライアント設定を変更しても良いですが、別の設定を作成したほうが柔軟に対応できるかなと思います。 この例では*.pstファイルの情報を収集するように設定しています。 作成した設定を展開していきます。 ここではもちろん任意のコレクションを選択することが出来ます。 単に待っていると下手をすると1週間とか待たなくてはいけないので「コンピューター ポリシーの取得および評価サイクル」と「ソフトウェア インベントリ サイクル」を「直ちに実行」しておきます。 これでもしばらく待つことになりますが、クライアント側のC:\Windows\CCM\LogsInventoryAgent.logを見るとソフトウェアインベントリが行われている状況が確認できます。 Inventory: *********************** Start of message processing. *********************** InventoryAgent 2015/07/08 12:25:06 10944 (0x2AC0) Inventory: Message type is InventoryAction InventoryAgent 2015/07/08 12:25:06 10944 (0x2AC0) Inventory: Temp directory = C:\Windows\CCM\Inventory\Temp\ InventoryAgent 2015/07/08 12:25:06 10944 (0x2AC0) Inventory: Clearing old collected files. InventoryAgent 2015/07/08 12:25:06 10944 (0x2AC0) Inventory: Opening store for action {00000000-0000-0000-0000-000000000002} … InventoryAgent 2015/07/08 12:25:06 10944 (0x2AC0) InventoryVersionNumber for ‘{00000000-0000-0000-0000-000000000002}’ not found. InventoryAgent 2015/07/08 12:25:06 10944 (0x2AC0) CInvState::VerifyInventoryVersionNumber: Couldn’t get version number for ‘{00000000-0000-0000-0000-000000000002}’: 80070490 InventoryAgent 2015/07/08 12:25:06 10944 (0x2AC0) Inventory: Delta report without a previous Full report; will do a Full report. InventoryAgent 2015/07/08 12:25:06 10944 (0x2AC0) Inventory: Action=Software, ReportType=Full, MajorVersion=1, MinorVersion=0 InventoryAgent 2015/07/08 12:25:06 10944 (0x2AC0) Inventory: Initialization completed in 0.046 seconds InventoryAgent 2015/07/08 12:25:06 10944 (0x2AC0) Inventory: Message [Type=InventoryAction, ActionID={00000000-0000-0000-0000-000000000002}, Report=Delta] already in queue. Message ignored. InventoryAgent 2015/07/08 12:34:38 11588 (0x2D44) CThrottler::Throttle()[{C0ED66AD-8194-49FD-9826-D0DD38AB7DAA}] - soft timeout exceeded. Throttling is now disabled for the current iteration of this task. InventoryAgent 2015/07/08 14:25:08 5980 (0x175C) Collection: Input context, scan rate in milliseconds = 2 InventoryAgent 2015/07/08 14:25:08 5980 (0x175C) Collection: Input context, skip file name = skpswi.dat InventoryAgent 2015/07/08 14:25:08 5980 (0x175C) Collection: Namespace = `\.\root\ccm\invagt`; Query = SELECT Name, Path, LastWriteDate, Size, CompanyName, ProductName, ProductVersion, ProductLanguage, FileVersion, FileDescription FROM FileSystemFile WHERE Name = ‘.pst’ AND Path = ‘\*’ AND SkipWindirFolders = TRUE AND IsCompressed = FALSE AND IsEncrypted = FALSE; Timeout = 14400 secs. InventoryAgent 2015/07/08 14:25:08 5980 (0x175C) Inventory: Collection Task completed in 7824.094 seconds InventoryAgent 2015/07/08 14:35:31 13364 (0x3434) Inventory: Temp report = C:\Windows\CCM\Inventory\Temp\148a9b9e-6ffc-4966-b228-bc89d47643a2.xml InventoryAgent 2015/07/08 14:35:31 13364 (0x3434) Collection: 1/1 inventory data items successfully inventoried. InventoryAgent 2015/07/08 14:35:31 13364 (0x3434) Inventory: Starting reporting task. InventoryAgent 2015/07/08 14:35:31 14508 (0x38AC) Reporting: 1 report entries created. InventoryAgent 2015/07/08 14:35:31 14508 (0x38AC) Inventory: Reporting Task completed in 0.031 seconds InventoryAgent 2015/07/08 14:35:31 14508 (0x38AC) Inventory: Successfully sent report. Destination:mp:MP_SinvEndpoint, ID: {79FE0043-18F1-4463-AB89-CF55DE7B8D14}, Timeout: 80640 minutes MsgMode: Signed, Not Encrypted InventoryAgent 2015/07/08 14:35:31 14508 (0x38AC) Inventory: Cycle completed in 7824.562 seconds InventoryAgent 2015/07/08 14:35:31 14508 (0x38AC) Inventory: Action completed. InventoryAgent 2015/07/08 14:35:31 14508 (0x38AC) Inventory: ************************ End of message processing. ************************ InventoryAgent 2015/07/08 14:35:31 14508 (0x38AC) 結果、ソフトウェアインベントリでファイルの情報を確認することができました。 削除してゴミ箱に入っているデータもレポートに含まれていますね。 ### レポートの利用 1台ずつリソースエクスプローラーで確認するのも大変なので、レポートで一括で確認してみます。 標準のレポートとしては以下のあたりがソフトウェアインベントリで収集したファイルを確認できるレポートです。 残念ながら、規定で用意されているサポートだと特定のコンピューターを指定する、特定のファイル名を指定する…ということをしないと情報が出力出来ず用途によってはちょっと不便ですね。 ここはカスタマイズしたレポートを作成する、あるいは直接SQL DBの中を覗く…という対応が良さそうです。 ### SCCMのDBスキーマ SCCMのSQL DBのスキーマはきちんと公開されています。 - SQL Server Views in System Center 2012 Configuration Manager 直接テーブルを参照するのではなく、ビューを通して参照することはサポートされています。 今回はソフトウェアインベントリの結果を参照したいので、以下が該当します。 - Software Inventory Views in Configuration Manager v_GS_SoftwareFile Lists the files and associated product IDs on each Configuration Manager client. The view can be joined to other views by using the ResourceID column. このビューの中身を見てみます。 きちんと収集されている情報が見られますね。 ### 既存のレポートの参照 コンピューター名の情報などは普通に欲しくなると思いますので、ResourceIDをキーにして紐付けばよい…のですが、自分で全部一から調べるよりも既存のレポートがどのように情報を生成しているのかを調べたほうが楽ですね。 > Select SYS.Netbios_Name0, SYS.Resource_Domain_OR_Workgr0, SF.FileName, SF.FileDescription, SF.FileVersion, SF.FileSize, SF.FileModifiedDate, SF.FilePath from fn_rbac_GS_SoftwareFile(@UserSIDs) SF join fn_rbac_R_System(@UserSIDs) SYS on SF.ResourceID = SYS.ResourceID WHERE SYS.Netbios_Name0 Like @variable Order by SF.FileName レポートは権限にもとづいて必要なもののみが表示されるように実装されているので、@UserSIDsなどがつかわれていて若干難しいですね。詳細は以下が参考になります。 - How to create an RBA capable report for ConfigMgr R2 - The Config Ninja Blog - Site Home - TechNet Blogs とりあえず、権限のコントロールは無視し、コンピューター名で絞らずに全部出すようにします。 > Select SYS.Netbios_Name0, SYS.Resource_Domain_OR_Workgr0, SF.FileName, SF.FileDescription, SF.FileVersion, SF.FileSize, SF.FileModifiedDate, SF.FilePath from v_GS_SoftwareFile SF join v_R_System SYS on SF.ResourceID = SYS.ResourceID Order by SF.FileName ...

2015年7月10日 · 5 分 · 胡田昌彦

SQL Server 2014 + SCCM 2012 R2 SP1でレポートサービスポイントの構成に失敗する

SQL Server 2014 + SCCM 2012 R2 SP1という構成でレポートサービスポイントの構成に失敗する現象がありました。 > 重要度 種類 サイト コード 日付/時刻 システム コンポーネント メッセージ ID 説明エラー マイルストーン AZR 2015/07/08 8:49:12 EBSJSQL01.EBSJSC.LOCAL SMS_SRS_REPORTING_POINT 7403 レポート サーバー サービスが、レポート サービス ポイント サーバー “EBSJSQL01.EBSJSC.LOCAL” で実行されていません。レポート機能を有効にするには、サービスを開始してください。 原因は不明ですが、レポートサーバーサービスが実行されていないと言われてしまいます。名前付きインスタンスを作成する時に、一緒にレポーティングサービスも構成した環境で、たしかにサービスも上がっているのですが…。 しかたがないので、一度レポーティングサービス関連のDBを削除した上で、Reporint Services 構成マネージャーで新規データベースを作成してみました。 この状態で再度レポートポイントの役割を削除~追加すると正常に構成できました。 重要度 種類 サイト コード 日付/時刻 システム コンポーネント メッセージ ID 説明 情報 マイルストーン AZR 2015/07/08 11:00:11 EBSJSQL01.EBSJSC.LOCAL SMS_SRS_REPORTING_POINT 4629 コンポーネントのステータス サマライザーは、コンピューター “EBSJSQL01.EBSJSC.LOCAL” のコンポーネント “SMS_SRS_REPORTING_POINT” の利用可能性が “オンライン” に変更されたことを検出しました。 原因は不明ですが、対処としてはこれで良いことにしておきます。

2015年7月8日 · 2 分 · 胡田昌彦

Managing Your Datacenter with Microsoft System Center Configuration Manager | Microsoft Ignite 2015 | Channel 9

Managing Your Datacenter with Microsoft System Center Configuration Manager | Microsoft Ignite 2015 | Channel 9 IgniteのSCCMでのデータセンター管理に関するセッション。かなり良い内容でした。 SCCMをこのくらい素敵に使いこなせると色々なことが相当楽になるな~という感じです。技術的に実現させることはある程度簡単に可能でも運用に載せるのは難しいんですよね…。 ...

2015年7月7日 · 1 分 · 胡田昌彦

SCOMレポートで適切なオブジェクトを選択する方法

SCOMは管理パックを導入すると様々なレポートが使えるようになります。 基本的にはレポートを実行すれば良いのですが、その際に、「オブジェクト」をきちんと選択する必要があります。 ...

2015年3月17日 · 3 分 · 胡田昌彦

Exchange Server 2013の管理パックに含まれるレポートが動作しない(SQL Server Reporting Servicesのデバッグ)

Operations Manager用のExchange Server 2013管理パックに含まれるレポートが動作せず、レポートを開始しようとすると「レポートを初期化できません。」というエラーが出てしまう事象が発生しました。色々と調査をして原因にたどり着きとりあえず回避はできたのですが、トラブルシューティング中にかなり紆余曲折してしまったので、「わかっている今ならこうやってすんなり対処できるはず」というものを同じような問題に遭遇する人や将来の自分のためにまとめておきます。 ...

2015年2月11日 · 9 分 · 胡田昌彦

System Center Configuration Manager クライアントプッシュインストールのReporting Servicesでの結果確認方法

SCCM 2012 SP1にてクライアントプッシュインストールを複数台のコンピューターに対して行いました。結果はccm.logに出力されている…のですが、ログを追うのも辛いですし、コンソールに表示されるのも時間がかかる…。何か他にいい方法は無いものかと探していたら、レポートの中にいいものがありました。 ...

2013年4月11日 · 1 分 · 胡田昌彦

System Center Configuration Manager クライアントプッシュインストールのReporting Servicesでの結果確認方法

SystemCenter関連の記事は以下のブログに移行しました。 - [System Center Blog](http://ebi.dyndns.biz/systemcenter/) この記事は以下の記事に移行しました。 - [System Center Configuration Manager クライアントプッシュインストールのReporting Servicesでの結果確認方法 | System Center Blog](http://ebi.dyndns.biz/systemcenter/2013/04/11/system-center-configuration-manager-%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%E3%83%97%E3%83%83%E3%82%B7%E3%83%A5%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%AEreporting-s/)

2013年4月11日 · 1 分 · 胡田昌彦

Reporting ServicesとDatabaseを別サーバーに構成する場合の接続アカウント

Reporting ServicesのサーバーとDatabaseを別々のサーバーに配置するように構成した場合に以下のエラーが発生しました。 “System.Data.SqlClinet.SqlException: Windows NT ユーザーまたはグループ’(null)’が見つかりませんでした。名前を再確認してください。” ...

2013年1月30日 · 1 分 · 胡田昌彦

SCOM 2012 SP1 Betaインストール

SystemCenter Operation Manager 2012 SP1 Betaをインストールしてみました。またしてもいくつかハマりどころがありましたので紹介します。 基本的にはインストーラーにしたがって進めればいいのですが…前提条件がかなり多く、それぞれインストーラーが教えてくれるのですが、結構面倒くさくわかりにくかったです。例の.NET Framework 3.5の代替パスを指定したインストールも必要です。正式版がでたら前提条件をインストールするPowerShellスクリプトでも用意しないとな、と思いました。 ...

2012年11月30日 · 5 分 · 胡田昌彦

SCOM 2012 SP1 Betaインストール

SystemCenter関連の記事は以下のブログに移行しました。 - [System Center Blog](http://ebi.dyndns.biz/systemcenter/) この記事は以下の記事に移行しました。 - [SCOM 2012 SP1 Betaインストール | System Center Blog](http://ebi.dyndns.biz/systemcenter/2012/11/30/scom-2012-sp1-beta%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB/)

2012年11月30日 · 1 分 · 胡田昌彦