Totally MOF'd (Full Version)

All Forums >> [Management Products] >> Microsoft Systems Management Server >> SMS 2003



Message


vfast -> Totally MOF'd (6/23/2008 2:46:46 AM)

Hi great SMS gurus.

I have a noobish question around MOF updates within SMS 2003 SP3.

I have been testing with Chris Stauffer's great Mof_updater method for implementing a mini_mof on my XP clients. I have 1 x Central MP and 2 x Primaries in my environment.

I have modified my mini_mof to include only the items I wish to add.

I applied the mof_updater package to my SMS servers and then advertised it to my clients. They have all run the MOF update successfully (I assume) as I have added a mini mof version and am reporting that 100% of my test collection have this value.

The issue is that some of my clients dont appear to be registering or updating items from the MOF file. Here's an example of errors in my inventoryagent.log

Collection: Class "NIC_Speed_Duplex" does not exist out. InventoryAgent 23/06/2008 3:52:40 PM 2548 (0x09F4)

Altogether my failed clients get 25 collection tasks failed in the log.

All my SMS servers are reporting fine. These missing entries seem to be for about 80% of my test clients (55). From what I can gather this normally means the MOF hasn't been compiled, yet as far as I know, it has.

Could this be a WMI issue on particular clients?

Appreciate any assistance!
Thanks
Glen.




vfast -> RE: Totally MOF'd (6/29/2008 7:37:39 PM)

Not sure if I've asked the question wrong or something. Has anyone got some suggestions on troubleshooting this one for me.

Appreciate your assistance [:D]




mlucero -> RE: Totally MOF'd (6/30/2008 8:48:03 AM)

Have you checked your inventoryagent.log in conjunction with the dataldr.log and mp_hinv.log on the site server?




vfast -> RE: Totally MOF'd (6/30/2008 10:40:20 PM)

Thanks Mike for the info. I investigated one of my problems clients.

I've attached the inventoryagent.log and here are the snippets from the other logs u mentioned from the site server for the last inventory for that client.

Dataldr.log
Processing Inventory for Machine: AE314588   Generated: 06/30/2008 14:18:16 SMS_INVENTORY_DATA_LOADER 30/06/2008 2:18:44 PM 9032 (0x2348)
File successfully parsed.  Processing item AE314588 (GUID = GUID:093D1452-3BF3-4AF7-A814-115273907483) SMS_INVENTORY_DATA_LOADER 30/06/2008 2:18:44 PM 9032 (0x2348)
CDiscoverySource::VerifyClientPublicKeys - Public key does not exist for client GUID:093D1452-3BF3-4AF7-A814-115273907483. SMS_INVENTORY_DATA_LOADER 30/06/2008 2:18:44 PM 9032 (0x2348)
Pragma delete found in inventory group MICROSOFT|SYSTEM_CONSOLE_USAGE|1.0.  Deleting group... SMS_INVENTORY_DATA_LOADER 30/06/2008 2:18:44 PM 9032 (0x2348)
Modifying inventory data in the database now.  Executing 7 stored procedure calls. SMS_INVENTORY_DATA_LOADER 30/06/2008 2:18:44 PM 9032 (0x2348)
Finished processing file X14mwuyb1.MIF SMS_INVENTORY_DATA_LOADER 30/06/2008 2:18:44 PM 9032 (0x2348)
Processing file w1nd87pk.MIF SMS_INVENTORY_DATA_LOADER 30/06/2008 2:18:44 PM 9032 (0x2348)
Renamed file to process from F:\SMS\inboxes\auth\dataldr.box\process\w1nd87pk.MIF to F:\SMS\inboxes\auth\dataldr.box\process\Xw1nd87pk.MIF SMS_INVENTORY_DATA_LOADER 30/06/2008 2:18:44 PM 9032 (0x2348)

mp_hinv.log
Hinv Retry: ******************* Start of Task ********************* MP_HinvEndpoint 30/06/2008 2:18:17 PM 10552 (0x2938)
Hinv Sax: loading F:\SMS\mp\outboxes\hinv.box\HinvAttachmentTPIQ43JM.xml MP_HinvEndpoint 30/06/2008 2:18:17 PM 10552 (0x2938)
Delta report from client AE314588, action description = Hardware MP_HinvEndpoint 30/06/2008 2:18:17 PM 10552 (0x2938)
Hinv Task: Translate report attachment to file "F:\SMS\mp\outboxes\hinv.box\H9YD66O6.MIF" returned 0 MP_HinvEndpoint 30/06/2008 2:18:17 PM 10552 (0x2938)
Hinv Retry: ******************* End of Task ********************* MP_HinvEndpoint 30/06/2008 2:18:17 PM 10552 (0x2938)

Apart from the original client errors I cant see anything that sticks out here.

Appreciate your efforts!





vfast -> RE: Totally MOF'd (7/1/2008 12:45:39 AM)

Did some testing today and using psexec to one of my clients, I tried to manually re apply the mini mof and I got the following error:

Parsing MOF file: sms_mini.mof
MOF file has been successfully parsed
Storing data in the repository...
An error occurred while creating object 5 defined on lines 82 - 88:
0X80041002 Class, instance, or property 'SMS_Class_Template' was not found.
Compiler returned error 0x80041001

The lines referenced are the minimof file revision.

I am still clueless here - but I hope one of you may know or have experienced this before.

Thanks





mlucero -> RE: Totally MOF'd (7/1/2008 12:12:29 PM)

Why don't you post the lines referenced in the error.




vfast -> RE: Totally MOF'd (7/1/2008 6:44:19 PM)

Here are the lines in question:
class MiniMofFileRevision : SMS_Class_Template
{
[SMS_Report(TRUE),key] string   KeyName;
[SMS_Report(TRUE) ] string   MiniMofRevision;
[SMS_Report(TRUE) ] string   ModifiedBy;
[SMS_Report(TRUE) ] string   ModifiedDate;
};

So the section for the MOFREVISION is:
//`'`*._.*`'`*-
//  Mini MOF File Revision Reporting Class
//`'`*._.*`'`*-
#pragma namespace("\\\\.\\root\\CIMV2\\SMS")
#pragma deleteclass("MiniMofFileRevision", NOFAIL)
[SMS_Report(TRUE), SMS_Group_Name("Mini MOF File Revision"), SMS_Class_ID("MiniMofFileRevision")]
class MiniMofFileRevision : SMS_Class_Template
{
[SMS_Report(TRUE),key] string   KeyName;
[SMS_Report(TRUE) ] string   MiniMofRevision;
[SMS_Report(TRUE) ] string   ModifiedBy;
[SMS_Report(TRUE) ] string   ModifiedDate;
};
//  <:[-<>>>>>>>>>>>>>>>>>>>>>>>>>>END>>-MOF File Revision-<<END<<<<<<<<<<<<<<<<<<<<<<<>-]:>


I have tried removing this section, the error then moves to another part of the MOF.

I have used WMI Explorer and can see the SMS_Class_Template in \\root\CIMV2\SMS

Thanks again for your assistance




skissinger -> RE: Totally MOF'd (7/1/2008 8:48:56 PM)

I haven't had to put this in my mini, but I've heard of others who have.

If you look in sms_def.mof, at the very top are some definitions, one of which is for sms_class_template.  You might need to copy this section to the top of mini.mof so it is declared within the mini.

quote:

#pragma namespace ("\\\\.\\root\\cimv2")
instance of __Namespace
{
Name = "SMS" ;
};
#pragma namespace ("\\\\.\\root\\cimv2\\SMS")
class SMS_Class_Template
{
};


It's worth a shot, anyway.




vfast -> RE: Totally MOF'd (7/2/2008 12:22:38 AM)

BINGO!

Thanks so much, I am a little confused as to WHY this is required, but now I really dont care.

it's working!

Thanks all for your assistance. I added the quoted text to my mini and it compiled just fine, clients reporting back 100%.




jnelson993 -> RE: Totally MOF'd (7/2/2008 12:36:02 AM)

So...can someone sell us on the idea of the mini/monster mof?  I just don't see the benefit, and I see confusion and extra steps when going that way...




skissinger -> RE: Totally MOF'd (7/2/2008 8:38:41 AM)

Sure, I'll give my reasons for why I went with the mini originally.  Remember, this was about 2 years ago... when I went from sms2003 sp1 to sp2, I retained everything in sms_def.mof.  For me it was around about the same time that ITMUv3 came out; and the readme said that you could get the version of windows update agent by default if you were at SP2, but it wasn't working for me.  It turned out that if you mofcomp'd the server's sms_def.mof + your customization at the end, you inadvertently broke ITMU's scanwrapper.exe's ability to record the windows update agent version in WMI on your clients.  Microsoft has since provided a KB instructions on how to fix sms_def.mof so you can mofcomp it on your clients.  But at the time, I decided to only mofcomp on my clients the stuff they couldn't have known about--just the stuff I tack on the end.  I had read about pragma include in Jeff's guide, so I decided that instead of having a sms_def.mof on the server, and maintaining a separate client-only.mof which contained just a subset of what was in sms_def.mof, I split it up into sms_def.mof and mini.mof.  I blogged it, and somehow the concept took off from that blog entry/article.

Of course, now I'm on ConfigMgr, so I don't have a mini anymore.  sms_def.mof (for reporting, the stuff that starts with root/cimv2/sms) gets the custom class reports tacked on the end, and configuration.mof (for data classes, the stuff that starts with root/cimv2) gets the custom classes for the clients taked on the end of it.  And the best part, ever... no more mofcomp'ing on the clients.

The mini just made sense to me, in my environment at the time.  Once I had it, though, it wasn't any more (or less) work to maintain it as two separate files than it was as 1 file.  Because I'm in a smaller company, and db size isn't that big of a concern, I get asked to gather some interesting regkeys or a script to populate WMI to get data for reports.  I average a mof edit about every 2 months.




mlucero -> RE: Totally MOF'd (7/2/2008 12:43:07 PM)

There goes Sherry again..... waiting at the gate for the MOF posting... and *LEAP* she's all over it!

You are great!

I'm not getting to play with SMS much right now.... they have me buried in Sharepoint, automating a lot of processes.




Page: [1]

Valid CSS!




Forum Software © ASPPlayground.NET Advanced Edition 2.4.5 ANSI
0.21875