This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- FlexNet Connect
- :
- FlexNet Connect Forum
- :
- Re: Instrumentation help required
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
‎Sep 19, 2008
01:42 PM
Instrumentation help required
We have a self-hosted server. I have written code to keep a counter of users who do a particular task in our application. If I run it multiple times on the same computer on the same day. It will not reflect correctly.
Does it take time for the statistics to be updated when UpdateTransaction is called? When I view the report it shows me 1 even if I run the same code multiple times. Does it only record once per machine?
I have posted my code below. Any help would be appreciated.
#define _GROUP_TRANSACTIONS L"TestTransaction"
#define _ONLINE_USE L"Test-OnlineUse"
HRESULT hr = S_OK;
CoInitialize(0);
try
{
CComPtr im;
if (SUCCEEDED(im.CoCreateInstance(CLSID_InstrumentationMgr)))
{
CComBSTR PC = uid.c_str();
CComVariant value(1);
CComBSTR bsAction = _ONLINE_USE;
CComBSTR bsGroup = _GROUP_TRANSACTIONS;
hr = im->LogTransaction(PC,bsGroup,bsAction,TSend,value);
im->UploadTransactions(PC); }
}
catch(_com_error E) {hr = E.Error();} catch(...) {hr = E_UNEXPECTED;}
CoUninitialize();
Does it take time for the statistics to be updated when UpdateTransaction is called? When I view the report it shows me 1 even if I run the same code multiple times. Does it only record once per machine?
I have posted my code below. Any help would be appreciated.
#define _GROUP_TRANSACTIONS L"TestTransaction"
#define _ONLINE_USE L"Test-OnlineUse"
HRESULT hr = S_OK;
CoInitialize(0);
try
{
CComPtr
if (SUCCEEDED(im.CoCreateInstance(CLSID_InstrumentationMgr)))
{
CComBSTR PC = uid.c_str();
CComVariant value(1);
CComBSTR bsAction = _ONLINE_USE;
CComBSTR bsGroup = _GROUP_TRANSACTIONS;
hr = im->LogTransaction(PC,bsGroup,bsAction,TSend,value);
im->UploadTransactions(PC); }
}
catch(_com_error E) {hr = E.Error();} catch(...) {hr = E_UNEXPECTED;}
CoUninitialize();
(5) Replies
‎Sep 22, 2008
04:07 PM
Hi Maria,
The Instrumentation manager records every instance of a log. So if a user has 10 instances of a certain action, they will be all recorded and timestamped ( you can see this in the tables if you have a SQL database ).
If you're using the reporting, first check to see when you generate the reports that you don't have "Show unique action for one product/version". This is very easy to miss, but right there ( the first option "Choose Report ) above the "Choose Product" drop down menu. You want to select "Show all actions for one product/version".
Let us know if this was your issue. On a side note, FYI, I found that the function GetNotificationCollection() calls UploadTransactions() internally ( I think this is currently undocumented in the documentation ).
Regards,
ugar_k
The Instrumentation manager records every instance of a log. So if a user has 10 instances of a certain action, they will be all recorded and timestamped ( you can see this in the tables if you have a SQL database ).
If you're using the reporting, first check to see when you generate the reports that you don't have "Show unique action for one product/version". This is very easy to miss, but right there ( the first option "Choose Report ) above the "Choose Product" drop down menu. You want to select "Show all actions for one product/version".
Let us know if this was your issue. On a side note, FYI, I found that the function GetNotificationCollection() calls UploadTransactions() internally ( I think this is currently undocumented in the documentation ).
Regards,
ugar_k
‎Sep 23, 2008
11:47 AM
Hi ugar_k,
Thanks for your help. I can see the transactions now. Since you mention GetNotificationCollection calls UPloadTransactions, I was wondering if I could LogTransactions and the Upload would happen during another session i.e. Is there a limit on the time or the number of transactions that can be logged before Uploading?
Thanks for your help. I can see the transactions now. Since you mention GetNotificationCollection calls UPloadTransactions, I was wondering if I could LogTransactions and the Upload would happen during another session i.e. Is there a limit on the time or the number of transactions that can be logged before Uploading?
‎Sep 23, 2008
05:36 PM
Hi Maria,
"I was wondering if I could LogTransactions and the Upload would happen during another session"
>> Yes.
"i.e. Is there a limit on the time or the number of transactions that can be logged before Uploading?"
>> I believe there is no limit on time and theoretically no limit on the number of transactions. For the number of transactions, it would be any internal architectural limit that the FLEXnet Connect Agent / Server have. I did hit a bug where it stopped uploading transactions, the transactions were being logged, but when Upload was called, it didn't update the logged transactions. Support is looking into. Try some performance testing. ( You could either create another test FLEXnet server for this or do your testing on your current server and then delete the records ). If possible, I'd recommend the former.
To give you a better understanding or their architecture, refer to the FLEXnet Connect 11 User Guide. They document a little more that should have been updated in the v6.1 documentation that lead me to figure out some things.
Specifically this:
"C:\Documents and Settings\All Users\Application Data\Macrovision\FLEXnet Connect\Database" is where the Machine/Product Registration is stored ( "{Product Code}.ini" per product )
and
"C:\Documents and Settings\\Application Data\Macrovision\FLEXnet Connect\Database" is the Profile Collections per product ( "{Product Code}.pf" ) and the Instrumentation Manager Transaction Logs per product ( "{Product Code}.trl" ).
I was able to figure all this out from the little blurb in the Sudoku example in the v11 documentation, FLEXnet Connect User Guide, Chapter 16, Adobe Pg. 454, when it describes how to see the Profile Data, and with some digging around. It's a shame all of this isn't documented clearly or at all, it would make life easier. The newer documentation seems to be headed in the right direction, but in baby steps...
Hope this helps.
Regards,
ugar_k
"I was wondering if I could LogTransactions and the Upload would happen during another session"
>> Yes.
"i.e. Is there a limit on the time or the number of transactions that can be logged before Uploading?"
>> I believe there is no limit on time and theoretically no limit on the number of transactions. For the number of transactions, it would be any internal architectural limit that the FLEXnet Connect Agent / Server have. I did hit a bug where it stopped uploading transactions, the transactions were being logged, but when Upload was called, it didn't update the logged transactions. Support is looking into. Try some performance testing. ( You could either create another test FLEXnet server for this or do your testing on your current server and then delete the records ). If possible, I'd recommend the former.
To give you a better understanding or their architecture, refer to the FLEXnet Connect 11 User Guide. They document a little more that should have been updated in the v6.1 documentation that lead me to figure out some things.
Specifically this:
"C:\Documents and Settings\All Users\Application Data\Macrovision\FLEXnet Connect\Database" is where the Machine/Product Registration is stored ( "{Product Code}.ini" per product )
and
"C:\Documents and Settings\
I was able to figure all this out from the little blurb in the Sudoku example in the v11 documentation, FLEXnet Connect User Guide, Chapter 16, Adobe Pg. 454, when it describes how to see the Profile Data, and with some digging around. It's a shame all of this isn't documented clearly or at all, it would make life easier. The newer documentation seems to be headed in the right direction, but in baby steps...
Hope this helps.
Regards,
ugar_k
‎Sep 23, 2008
07:43 PM
Thank you ugar_k. I appreciate all your help.
I was able to see all the transaactions located in the Macrovision database files.
The only thing is the timestamp of the transaction is not same as the time the transaction is logged. Do you know how I can change the timezone for the FlexNet client?
Also do you know where I can the FLEXnet Connect 11 User Guide? It is very difficult to work with the FLEXnet 6 help.
I was able to see all the transaactions located in the Macrovision database files.
The only thing is the timestamp of the transaction is not same as the time the transaction is logged. Do you know how I can change the timezone for the FlexNet client?
Also do you know where I can the FLEXnet Connect 11 User Guide? It is very difficult to work with the FLEXnet 6 help.
‎Sep 23, 2008
10:00 PM
Hi Maria,
"The only thing is the timestamp of the transaction is not same as the time the transaction is logged. Do you know how I can change the timezone for the FlexNet client?"
>> That's a good question. I don't know, and it's on my list of questions to find out from support. I noticed that it's 7hrs ahead of PST. Worst case scenario, we'll subtract 7 hrs from the timestamps in our queries.
"Also do you know where I can get the FLEXnet Connect 11 User Guide?"
>> http://www.acresso.com/downloads.htm
It's in the "Current Products" tab below "Downloads". If you can't see anything in the tab, click on the "Previous Versions" tab and click back on the "Current Products" tab. Everything is in the FLEXnet Connect row.
Hope this helps.
Regards,
ugar_k
"The only thing is the timestamp of the transaction is not same as the time the transaction is logged. Do you know how I can change the timezone for the FlexNet client?"
>> That's a good question. I don't know, and it's on my list of questions to find out from support. I noticed that it's 7hrs ahead of PST. Worst case scenario, we'll subtract 7 hrs from the timestamps in our queries.
"Also do you know where I can get the FLEXnet Connect 11 User Guide?"
>> http://www.acresso.com/downloads.htm
It's in the "Current Products" tab below "Downloads". If you can't see anything in the tab, click on the "Previous Versions" tab and click back on the "Current Products" tab. Everything is in the FLEXnet Connect row.
Hope this helps.
Regards,
ugar_k