Re: WIMS> CIM> Call for volunteers to assist with prototype CIM proxy provider

From: Ira McDonald (blueroofmusic@gmail.com)
Date: Sat Sep 27 2008 - 17:46:10 EDT

  • Next message: William A Wagner: "WIMS> Minutes cim-wims_080929"

    Hi Rick,

    For property mappings - your sample (algs.ini) contains some lines
    with 'fDirect=prtXxx' or 'fNull' or 'fAlertRecord_RecordData'.

    Could you explain this notation?

    If that's what you want for a direct mapping (for example an index
    object value as in your sample), then your ABNF in note bullet (3)
    below isn't correct.

    Could you please clarify?

    Cheers,
    - Ira

    On Thu, Sep 18, 2008 at 6:24 PM, <Richard_Landau@dell.com> wrote:
    > Several people volunteered to help in the construction of the prototype CIM
    > proxy provider. I can certainly use the help in a few areas. All of these
    > are initialization files, just structured ASCII. No code, just tables to
    > supply the data translations from one format to the other.
    >
    > Here are a few things I can use help with, please, if someone has time.
    >
    > 1. MIB dumps: What is actually in the SNMP agents of printers? I could use
    > MIB dumps from a variety of printers. (The provider can run from these MIB
    > dumps instead of a live printer, for convenience.) Getting a dump in a
    > reasonable format is simple to do.
    >
    > (In all file formats, blank lines and comment lines beginning with # or ;
    > will be ignored, no problem. Use comments to describe the contents,
    > provenance, version, etc., of the file.)
    >
    > Format: one OID and value per line.
    > ABNF: numeric-oid "\t" contents
    > If there is additional information in the line such as datatype, length,
    > etc., that's okay. I can process almost anything down to the format
    > needed.
    >
    > Easy way to do this: Get Net-SNMP v5.4.1.2 at
    > http://sourceforge.net/project/showfiles.php?group_id=12694&package_id=162885&release_id=611628
    > The kit is less than 4MB. Installs in a few seconds.
    >
    > The CLI command to get a numeric dump, which is all I need, is
    > snmpwalk -v 1 -c public -O n 11.22.33.44 1
    > Substitute the right IP address, SNMP version number, community name.
    > (SNMPv2 is called "v2c" in the command options.) If you have timeout
    > problems, check the command help for the options to lengthen timeouts and
    > retries.
    >
    > I'll strip off the leading dot (they use the convention .1.3.6.1.2.1 et ff)
    > and the syntax spec, which takes all of two lines of sed, and poof, done.
    >
    > All contributions appreciated. An example is attached.
    >
    > 2. Enum value translations: How to map the enum values of SNMP variables to
    > the enum values of the related CIM properties? I need the correlation
    > between the enums that come from the printer and the ones that are emitted
    > in the CIM property.
    >
    > These correlations cannot, unfortunately, be constructed automatically.
    > They do require a human to read the definitions and decide what old values
    > are equivalent to what new values.
    >
    > Format: one mapping pair per line.
    > ABNF: cim-classname "." cim-property-name "\t"
    > cim-enum-numeric-value "\t" cim-enum-string-value
    > snmp-variable-name "\t" snmp-enum-numeric-value "\t"
    > snmp-enum-string-value
    >
    > A starter set file is attached. It contains everything except the SNMP
    > numeric and string values. It seems very large, but take heart: one needs
    > to fill in only a few percent of it. The init code is smart enough to store
    > only the values with proper translations, and if the runtime never
    > encounters one of the unknown values, no problema.
    >
    > Shortcut #1: Let's not bother with all the properties. Let's include only
    > the properties that are likely to show up non-null in response to a
    > request. For instance, almost anything that does not have "Print" in its
    > classname is not likely to be rendered by the prototype provider. There
    > might be a few properties that are inherited from non-print parent classes,
    > for instance the status variables.
    >
    > Shortcut #2: Let's not bother with all the values. Let's include only the
    > values that one is likely to see. Almost all the enum lists contain 99%
    > chaff, at least w.r.t. a prototype like this. For instance, the only values
    > of CIM_PrintInterpreter.LangType that I am likely to encounter are
    > PostScript and PCL and maybe Unknown; we don't need all sixty-five values.
    >
    > 3. Property mappings: What CIM properties are mapped directly from their
    > SNMP counterparts? This is particularly important because it keeps me from
    > having to write several hundred tiny functions, one for each property.
    > Directly mapped properties can all be done through a single function.
    >
    > Take this list of properties and tell me which ones are mapped directly from
    > some SNMP variable. If there is such a direct mapping, add the name of the
    > SNMP variable to the line. If not, do nothing; just leave the CIM property
    > name alone on the line.
    >
    > Format: one mapping per line.
    > ABNF: cim-classname "." cim-property-name "\t" snmp-variable-name
    >
    > A starter set file is attached.
    >
    > Thank you all for any assistance you can give.
    >
    > rick
    > ----------------------
    > Richard_Landau(at)dell(dot)com, Stds & System Mgt Architecture, CTO Office
    > +1-512-728-9023, One Dell Way, RR5-3, MS RR5-32, Round Rock, TX 78682
    > <<WhatINeedSamples.zip>>

    -- 
    Ira McDonald (Musician / Software Architect)
    Chair - Linux Foundation Open Printing WG
    Blue Roof Music/High North Inc
    email: blueroofmusic@gmail.com
    winter:
      579 Park Place  Saline, MI  48176
      734-944-0094
    summer:
      PO Box 221  Grand Marais, MI 49839
      906-494-2434
    


    This archive was generated by hypermail 2.1.4 : Sat Sep 27 2008 - 17:46:19 EDT