Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

...

...

...

Info

Fact2field functionality allows users to define which select the Breeze facts that Cloudaware must should convert to fields on Force.com objects. Cloudaware will try to propagate fields containing that contain the caFact_ prefix with a matching Breeze fact. For example, if you create a caFact_uptimehours field, Cloudaware will try to find search for the uptime_hours fact and use its value. SUPPORTED FOR OBJECTS:

Table of Contents
stylenone

Supported objects

CaFacts are supported for the following objects in Cloudaware:

  • AWS EC2 Instance Fact

  • AWS EKS Cluster Fact

...

  • Azure Virtual Machine Fact

...

  • Azure VM Scale Set Instance Fact

  • Azure AKS Cluster Fact

...

  • Google GCE Instance Fact

...

  • VCenter Virtual Machine Fact

...

  • CloudAware Physical Server Fact

...

Create a caFact

  1. Log in to Cloudaware → Setup.

  2. Go to Object Manager. Select an object from the list, e.g. CloudAware Physical Server.

  3. Select the tab Fields & Relationships. Click New to add a field.

  4. For field type, select any of Text types → Next.

  5. Enter the details for the new field, for example:

    Screenshot 2025-02-05 at 5.42.06 PM.pngImage Added

    WHERE
    Field Label - set a human-readable name for the field. e.g. User ID
    Field Name - replace the auto-generated name by adding the prefix caFact_ and Field Label value (field names are not case-insensitive

...

We recommend using any Text type for fact2field fields. Use a maximum length of 255 for Text/Text Area:

...

Note

caFact fields are not refreshed simultaneously when a field is added. To populate caFact fields, wait for any update action on the fact object OR use the instruction below.

NB. caFact fields should be created on AWS EC2 Instance, Azure VM, Physical Server etc objects.

Mass Update Execution

Log in to your Cloudaware account. Open the main menu → Developer Console → Debug → Open Execute Anonymous Window → type the query like

Code Block
Update [SELECT Id from CA10__CaAwsInstanceFact__c WHERE Name like '%upgr%'];

where CA10__CaAwsInstanceFact__c  is API Name of the fact object, Name is the fact attribute that needs to be updated and %upgr% - its value that will be queried. This query will populate facts containing 'upgr' in their Name field on all AWS EC2 Instances.

Query examples:

Code Block
Update [SELECT Id FROM CA10__CaAwsInstanceFact__c WHERE Name = 'os.release.full'];
Code Block
Update [SELECT Id FROM CA10__CaAzureVirtualMachineFact__c WHERE Name = 'os.family'];
Code Block
Update [SELECT Id FROM CA10__CaGoogleGceInstanceFact__c WHERE Name = 'zone'];
Code Block
Update [SELECT Id FROM CA10_CaPhysicalServerFact__c WHERE Name like '%uptime%'];

Start with using a query without filtering applied. However, if you face Apex CPU or limit exception errors, use the LIMIT/OFFSET clauses (see examples below):

Code Block
 Update [SELECT Id FROM CA10__CaAwsInstanceFact__c WHERE Name = domain LIMIT 1000 OFFSET 0];
Code Block
Update [SELECT Id FROM CA10__CaAzureVirtualMachineFact__c WHERE Name like '%node_report_timestamp%' LIMIT 1000 OFFSET 1000];
Code Block
Update [SELECT Id FROM CA10__CaGoogleGceInstanceFact__c WHERE Name = 'project' LIMIT 1000 OFFSET 2000];

...

  1. ), e.g. caFact_userId
    Help Text - provide the full fact name, e.g. ansible.user_id

    Click Next.

  2. Select user profiles for which the new fields will be visible → Next.

  3. Check the layout where the new fields is visible. Click Save.

Note

CaFact fields may not populate immediately after a new field is added.Please allow some time for the update action on a Fact object to process.

Breeze Facts examples

Linux

Windows

architecture
bios_release_date
bios_version
breeze_agent_id
domain
ec2_metadata
ec2_product_codes
ec2_userdata
memorysize
memorysize_mb
os
system_uptime
uptime_seconds,

etc.

azure
domain
ec2_metadata
ec2_userdata
fact_role
facterversion
interfaces
macaddress_ethernet
netmask_ethernet
puppetversion
rubyplatform
rubyversion
serialnumber
timezone,

etc.