Criando Coletores VBScript Customizados Comuns a todos os Arquivos de Configuração

Ao criar coletores VBScript customizados comuns, o nome do arquivo deverá conter o nome da propriedade de pré-requisito e deverá ser armazenado no subdiretório /lib. O coletor contém o código para obter o valor real para uma propriedade de pré-requisito. Ele também pode usar as funções e as sub-rotinas comuns para obter o valor, se necessário.

Antes de Iniciar

Assegure-se de revisar o conjunto de funções e sub-rotinas predefinidas nos apêndices a seguir, antes de criar os coletores. Determine se é possível usar qualquer um deles para obter valores reais: Determine se o coletor deve verificar se a propriedade de pré-requisito existe e, se ela existir, quais outras informações devem ser reunidas. Cada verificação deve retornar um valor, se existir um ou não. Exemplo:
  • Verifique se uma variável de ambiente existente, como o diretório inicial de um produto. Um exemplo é TCR_HOME para Tivoli Common Reporting
  • Verifique se a variável de ambiente contém um arquivo JAR, binário ou caminho, por exemplo, o caminho para o JRE na variável de ambiente do PATH.
  • Verifique o valor real de uma variável de ambiente, como o diretório inicial de um produto. Um exemplo é TCR_HOME para Tivoli Common Reporting.
  • Verifique se um produto está instalado.
  • Verifique qual versão do produto está instalada.

Procedimento

  1. Crie um arquivo VBScript. Salve o arquivo no diretório ips_root/lib, com uma variante da convenção de nomenclatura do arquivo a seguir:
    [prefix_identifier.]property_name.vbs
    Em que:
    • O prefix_identifier é o identificador com prefixo para a categoria predefinida de propriedades de pré-requisito, conforme descrito em Tabela 1.
    • O property_name é o nome da propriedade de pré-requisito e é usado no nome do coletor.
    Por exemplo, o mssqlVersion.vbs contém o código para obter o valor real para a propriedade de pré-requisito do SQL server do MS na máquina do Windows.
  2. Usando um editor VBScript, inclua o código para obter o valor da propriedade de pré-requisito. Use o VBScript COM e as funções para acessar os elementos do ambiente do Windows e executar no ambiente do Windows Script Host. Assegure-se de que a verificação retorne a saída padrão, da seguinte maneira:
    WScript.Echo "property_name=" & var_for_value
    • O property_name que representa a propriedade de pré-requisito, conforme gravado no arquivo de configuração, por exemplo, env.tcrhome.
    • O var_for_value, isto é, a variável VBScript para o valor real que o coletor obtém para a propriedade de pré-requisito.
    Para verificar se o ambiente do TCR_HOME existe e retornar o valor real em que o nome da propriedade de pré-requisito é env.tcrhome:
    set wshShell = WScript.CreateObject("WScript.Shell")
    tcr_home=WshShell.ExpandEnvironmentStrings("%TCR_HOME%")
    WScript.Echo "env.tcrhome=" & tcr_home
    Para verificar se o JRE está definido na variável PATH, em que o nome da propriedade de pré-requisito é env.path.jre:
    Set wshShell = WScript.CreateObject("WScript.Shell")
    path = WshShell.ExpandEnvironmentStrings("%PATH%")
    Set objRegEx = new RegExp
    objRegEx.Pattern = "(^|([:;\\/]))(C:\Program Files\IBM\Java60\jre\bin)($|[:;])"
    objRegEx.IgnoreCase = True
    objRegEx.Global = True
    Set matches = objRegEx.Execute(path)
    WScript.Echo "env.path.jre=" & (matches.Count > 0)
    Para verificar a versão do Tivoli Directory Integrator instalado, em que o nome da propriedade de pré-requisito é installedSoftware.TDI.version:
    strComputer = "."
    strKeyPath = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall"
    regDisName = "DisplayName"
    regDisVer = "DisplayVersion"
    
    Set oReg = GetObject("winmgmts:{impersonationLevel=Impersonate}!\\" &
            		strComputer & "\root\default:StdRegProv")
    
    Set sftReg = new RegExp
    sftReg.pattern = "Tivoli Directory Integrator"
    sftReg.Global=False
    oReg.EnumKey HKEY_LOCAL_MACHINE, strKeyPath, arrSubKeys
    For Each subkey In arrSubKeys
        searchkey = strKeyPath & "\" & subkey
        oReg.GetStringValue HKEY_LOCAL_MACHINE, searchkey, regDisName, strName
        oReg.GetStringValue HKEY_LOCAL_MACHINE, searchkey, regDisVer, strVersion
        If Not IsNull(strName) Then
           Set matches = sftReg.Execute(strName)
           If matches.Count > 0 Then
               Wscript.Echo "installedSoftware.TDI.version=" & strVersion
           End If
        End If      
    Next
  3. Execute o coletor VBScript para assegurar-se de que não haja erros de tempo de execução e depuração, conforme necessário.
  4. Crie um avaliador customizado apenas se as funções de comparação padrão não puderem comparar os valores reais e esperados.