You have a pretty detailed question so let me try to answer this to the best of my ability:
1. Application Monitoring - If you open up Task Manager and look at running processes you will see the meta data value of the executable and NOT the name in Add/Remove Programs. When we monitor or prohibit an application from running we provide a very granular ability to select down to the build level if so desired. We can ONLY monitor an executable and not a title of a piece of software. An example would be Microsoft Access. This would be grouped together under MS Office (Add/Remove Programs) and not listed specifically in most cases (always an exception). So if I wanted to monitor MS Access on a users device I have three methods to do so...
If the application has already been added to custom applications then you can select from there or select new (3 choices).
a. Add from Software Inventory - This will be version specific (You will need to add all versions you need or want to monitor/prohibit).
b. Add user Defined Application - This will allow you to be as specific as you want... All versions or add the checksum
c. Add Application from Device - Down to the build number. This will allow you to prohibit specific builds of software where there may be security issues.
If you wish to monitor all versions of a specific piece of software then use option b. Just add the value you find running in Processes of Task Manager.
An example would be adding "msaccess.exe"
You asked why we never update the Custom Applications List... We never assume anything... The product is designed to have the customer add the titles and versions that you want to be added. This is never set to auto-add any title.
Your final question is why nothing is available under TEST... Once added to Custom Applications it is no longer available to select again.
I hope this helps answer at least a couple of your questions.
1 of 1 people found this helpful
This is a dynamic table. When you preform a discovery with Software Inventory enabled and proper credential set it will update the Count IF and new software/device is discovered with that software listed in Custom Apps populated. In addition to Discovery populating this any device with an agent on board will also update during a software inventory update/upload (Diff).
You can test this quickly by installing Notepad ++ on a device that will be a version upgrade or fresh install and once installed preform an "Audit Now" on same device with an agent. Wait for it to complete (about 5-10 minutes or so and then check the Custom Applications page with a refresh to see the numbers increment by 1 of the version you just installed.
Be aware that this page will show both active clients but also deprecated devices so this will provide data of devices that are not active per se.
Let me know if you have any additional questions.
ok ... let's try :-)
My computer on BCM
the state before installing a new version in BCM Custom Application
My computer after installing a new version of N++ (7.1)
My Computer on BCM after the Audit
the state after installing a new version in BCM Custom Application and broked the F5 key
so ... nope
I stand corrected and apologize for leading you astray. After your reply I too followed the entire process and got the same results. Typically everything in CM is very dynamic and not until I looked at the backend DB is when I noticed a static field in the Applications table. I looked for triggers that would potentially rebuild with a current count but found none. I fully understand wanting a "Current" count and not a static count done at time of adding the record.
This is what I found in the MS SQL DB:
I will check again tomorrow to see if I missed something and these do actually change but I doubt it based on my new research.
Did you found any work around for this ?
I was looking to track why I get duplicated and strange merged infos between clients I found sql error in the mtxagent.log (server).
SELECT a.ApplicationName, a.ApplicationVersion, COUNT (a.ApplicationName)
FROM Applications a
INNER JOIN SoftwareInventory s ON ((s.Version IS NULL)
AND(a.ApplicationVersion = '' )
-- AND(a.ApplicationVersion = N'')
-- AND(a.ApplicationVersion IS NULL )
AND (a.ApplicationName = Name))
GROUP BY a.ApplicationName, a.ApplicationVersion UNION SELECT a.ApplicationName, a.ApplicationVersion, COUNT (a.ApplicationName)
FROM Applications a
INNER JOIN SoftwareInventory s ON ((s.Version IS NOT NULL)
AND (a.ApplicationVersion = s.Version)
AND (a.ApplicationName = CONCAT (CONCAT (Name, ' '), Version)))
GROUP BY a.ApplicationName, a.ApplicationVersion
the AND(a.ApplicationVersion = '' ) is the line found in the log and who is generating an 'ORA-12704' error
then AND(a.ApplicationVersion = N'') and -- AND(a.ApplicationVersion IS NULL ) are the lines working well
Maybe that would be a an answer of this counting problem ?
This error is the reason why your count is not updated. That query is executed in order to update the count after the integration of software inventories.
You can find this log at the beginning of this function: "Updating Installed Application Count"
This sql error, due to the missing N has been fixed in 12.6.00.003 build 180214o.
What is surprising is that Oracle does not return always an error for such comparisons without N on NVARCHAR2 columns.
Anyway as we are using NVARCHAR2 on Oracle, the recommendation is that each comparison with a string should be done with N.