Hi,
Most likely the virtual interfaces are actually present as objects, and what's missing is only the DCIs for them - these are two separate mechanisms. Here's what's actually happening:
NetXMS builds the interface list from the standard ifTable and creates interface objects for everything the device reports - VLAN, PPPoE, bridges and tunnels included, there is no filtering by type at that stage. So after a configuration poll they all should be visible in the Interfaces view under the node - I do believe they are there on your system? If some are genuinely missing even after configuration poll, that would mean RouterOS is not exposing them over SNMP, but that would be unusual.
What filters them out is the Interface Traffic template itself. Its DCIs are created by instance discovery, and the filter script in the prototype DCIs only accepts interfaces with ifType 6, 7 or 22 (ethernet-like types). VLAN (ifType 135), PPP/PPPoE (23), tunnels (131), bridges (209) are all rejected by that check. The filter also skips loopbacks, interfaces whose expected state is not UP, and interfaces with speed at or below 20 Mbit/s.
You can see it happening: run Poll -> Instance discovery on the node and look at the poller output - there will be a "skipped - interface type" line for every virtual interface.
To include them, open the template under Templates -> Interface traffic, edit the instance discovery filter script in the prototype DCIs and extend the interfaceTypes array at the top with the types your virtual interfaces report:
interfaceTypes = [6, 7, 22, 23, 131, 135, 209];
Actual ifType of every interface is shown on the interface object's Overview tab, so check there which values you need. Note: with default server configuration (Server.ImportConfigurationOnStartup = 1) your edits to this template survive server upgrades - stock templates are not overwritten on import.
For CPU / temperature / voltage on MikroTik you don't need to hunt for OIDs manually:
Health metrics - create DCI with origin "Network device driver". For MikroTik nodes the driver reads the RouterOS health gauge table and offers every gauge the particular model exposes (cpu-temperature, board-temperature, voltage, fan speeds, etc.) by name in the metric selection dialog. Values come exactly as the device reports them, so check the scale and add a transformation script if needed.
CPU load - standard SNMP DCI on 1.3.6.1.2.1.25.3.3.1.2 (hrProcessorLoad from HOST-RESOURCES MIB, one row per core).
Put these DCIs into your own template and let it apply automatically to all RouterOS devices with auto-apply filter script:
return $node.driver == "MIKROTIK";
same idea as the custom attribute you already use for interface traffic, just keyed on the driver instead.