clinthuffman / PAL

Performance Analysis of Logs (PAL) tool
MIT License
481 stars 101 forks source link

Method invocation failed because [System.Double] does not contain a method named 'GetUpperBound'. #47

Open jmmcreynolds opened 5 years ago

jmmcreynolds commented 5 years ago

I get the error below sometimes when I run this to analyze files. I have no idea where the PAL.log file is, it's not listed on the report file that show the error details, nor can I find it in %temp%. Happy to provide more data, just not sure where to find it. ;)

Was using the PAL wizard with the following options: NO time range restriction Auto-Detect for threshold file, and it added SystemOverview.xml and WindowsUpdate.xml OS: Windows Server 2012 R2 PhysicalMemory: 32 Analysis Interval: 10 minutes Process all of the counters in the log was checked

If a setting wasn't mentioned, it wasn't modified.

---------- ERROR BELOW ---------- Overall progress... Status: Creating charts, PAL 2.8.1 Progress: 76%... Creating charts, LogicalDisk Avg. Disk sec/Read

An error occurred on... For ($i=0;$i -le $iValues.GetUpperBound(0);$i++) At U:\Users\PAL_FlatFiles_2.8.1\PAL.ps1:3041 char:15 + For ($i=0;$i -le $iValues.GetUpperBound(0);$i++) + ~~~~~~~~ Method invocation failed because [System.Double] does not contain a method named 'GetUpperBound'.

clinthuffman commented 5 years ago

Hey Jason,

Does it work if you use Auto for the analysis interval? I think I broke manually setting the analysis interval at some point.

Thank you,


From: Jason McReynolds notifications@github.com Sent: Tuesday, August 6, 2019 9:58:17 PM To: clinthuffman/PAL PAL@noreply.github.com Cc: Subscribed subscribed@noreply.github.com Subject: [clinthuffman/PAL] Method invocation failed because [System.Double] does not contain a method named 'GetUpperBound'. (#47)

I get the error below sometimes when I run this to analyze files. I have no idea where the PAL.log file is, it's not listed on the report file that show the error details, nor can I find it in %temp%. Happy to provide more data, just not sure where to find it. ;)

Was using the PAL wizard with the following options: NO time range restriction Auto-Detect for threshold file, and it added SystemOverview.xml and WindowsUpdate.xml OS: Windows Server 2012 R2 PhysicalMemory: 32 Analysis Interval: 10 minutes Process all of the counters in the log was checked

If a setting wasn't mentioned, it wasn't modified.

---------- ERROR BELOW ---------- Overall progress... Status: Creating charts, PAL 2.8.1 Progress: 76%... Creating charts, LogicalDisk Avg. Disk sec/Read

An error occurred on... For ($i=0;$i -le $iValues.GetUpperBound(0);$i++) At U:\Users\PAL_FlatFiles_2.8.1\PAL.ps1:3041 char:15 + For ($i=0;$i -le $iValues.GetUpperBound(0);$i++) + ~~~~~~~~ Method invocation failed because [System.Double] does not contain a method named 'GetUpperBound'.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fclinthuffman%2FPAL%2Fissues%2F47%3Femail_source%3Dnotifications%26email_token%3DAEXDYVHOPKIZNX4KEPWNKKTQDJI6TA5CNFSM4IJ4L6V2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HDZHWVA&data=02%7C01%7C%7C0ddcba16c2b94ffdbfac08d71af3dd59%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637007506999091916&sdata=Az%2BwRyXPuPQtIinQG5p0%2BLmxVxvYuMUA68kHZg97Cqo%3D&reserved=0, or mute the threadhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAEXDYVBKEHGSIG57DZVPNSLQDJI6TANCNFSM4IJ4L6VQ&data=02%7C01%7C%7C0ddcba16c2b94ffdbfac08d71af3dd59%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637007506999101920&sdata=a77NS4repft%2FLr7ol1y96JFTdGQ%2BopxmqTeF5FIQGG4%3D&reserved=0.

markhemeon commented 3 years ago

I get the same thing with analysis level set to Auto - would it help if I had Powershell journaling on or anything?

Overall progress... Status: Creating charts, PAL 2.8.2 Progress: 76%... Creating charts, LogicalDisk Avg. Disk sec/Read

An error occurred on... For ($i=0;$i -le $iValues.GetUpperBound(0);$i++) At C:\Program Files\PAL\PAL\PAL.ps1:3041 char:15 + For ($i=0;$i -le $iValues.GetUpperBound(0);$i++) + ~~~~~~~~ Method invocation failed because [System.Double] does not contain a method named 'GetUpperBound'.

SCRIPT ARGUMENTS: Log: C:\Users\hisalesadmin\Downloads#$$(*% Health System Data Gathering Results\Data Collector Sets\Production\Production Application Server\PAL_Quick_System_Overview.blg ThresholdFile: C:\Program Files\PAL\PAL\QuickSystemOverview.xml AnalysisInterval: AUTO IsOutputHtml: $True IsOutputXml: $False HtmlOutputFileName: [LogFileName]_PALANALYSIS[DateTimeStamp].htm XmlOutputFileName: [LogFileName]_PALANALYSIS[DateTimeStamp].xml OutputDir: [My Documents]\PAL Reports AllCounterStats: $False NumberOfThreads: 10 IsLowPriority: $False DisplayReport: True

Please contact the PAL tool team with this error by posting it to GitHub.com/clinthuffman/PAL. Thank you!

For detailed information, please look at the script execution log at

clinthuffman commented 3 years ago

The path to the log is long and has spaces in them. PAL should be able to work with that, but maybe try putting the log in a shorter path without spaces just to make sure. Also, have you tried opening the counter log in Performance Monitor to make sure the log isn't corrupted?

markhemeon commented 3 years ago

Any idea what I’d look for, I’m assuming in the CSV in temp?

Get Outlook for iOShttps://aka.ms/o0ukef


From: Clint Huffman notifications@github.com Sent: Monday, March 8, 2021 11:05:12 PM To: clinthuffman/PAL PAL@noreply.github.com Subject: [EXTERNAL] Re: [clinthuffman/PAL] Method invocation failed because [System.Double] does not contain a method named 'GetUpperBound'. (#47)

The path to the log is long and has spaces in them. PAL should be able to work with that, but maybe try putting the log in a shorter path without spaces just to make sure. Also, have you tried opening the counter log in Performance Monitor to make sure the log isn't corrupted?

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/clinthuffman/PAL/issues/47#issuecomment-793353118, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ARRQGTCYUHAY5CN7FUNS3CDTCWM7RANCNFSM4IJ4L6VQ.

clinthuffman commented 3 years ago

Sorry, PAL usually creates a detailed PAL.log file to show what its doing and to report detailed errors, but it looks like I forget to re-enable it the last time I published the build. If you open PAL.ps1 and remove the pound (#) symbol at the beginning of line 5462, and then save it. PAL should start writing a log file to your user temporary directory at %temp%\PAL.log or C:\Users[user]\AppData\Local\Temp\PAL.log where [user] is your user name.

The error that was originally posted is very odd. It is basically saying that $global:htCounterInstanceStats is empty. It's pretty far into processing the counter log, so I would have expected it to fail a lot earlier than at this point.

First, make sure all of you are on the latest build and that your respective counter logs are not corrupted (load it into Perfmon to be sure). If it still fails, then would you mind sending me the counter log, so I can debug this? Upload it to http://bit.ly/PalUpload and then respond to this post to let me know when it is there. I'll delete it shortly after I receive it.

Markhemeon, I'm not sure what your question is in regards to the CSV. PAL converts all BLG files to CSV using relog.exe and saves it to a temporary folder, then deletes it when done. Otherwise, if the counter log is already in CSV, then it doesn't do the conversion. With that said, I still highly recommend recording counter logs in binary (*.blg) due to a capture bug in Performance Monitor where it fails to collect transient counter instances. Binary format is very reliable and highly recommended over CSV data collection.

markhemeon commented 3 years ago

Thank you for the advice sir! I’ll set up a run with this edit this morning and shoot you the results. I truly appreciate the help. I’ve been using PAL for years and would be lost without it for system performance evaluations.

From: Clint Huffman @.> Sent: Tuesday, March 9, 2021 5:14 PM To: clinthuffman/PAL @.> Cc: Mark Hemeon @.>; Comment @.> Subject: [EXTERNAL] Re: [clinthuffman/PAL] Method invocation failed because [System.Double] does not contain a method named 'GetUpperBound'. (#47)

Sorry, PAL usually creates a detailed PAL.log file to show what its doing and to report detailed errors, but it looks like I forget to re-enable it the last time I published the build. If you open PAL.ps1 and remove the pound (#) symbol at the beginning of line 5462, and then save it. PAL should start writing a log file to your user temporary directory at %temp%\PAL.log or C:\Users[user]\AppData\Local\Temp\PAL.log where [user] is your user name.

The error that was originally posted is very odd. It is basically saying that $global:htCounterInstanceStats is empty. It's pretty far into processing the counter log, so I would have expected it to fail a lot earlier than at this point.

First, make sure all of you are on the latest build and that your respective counter logs are not corrupted (load it into Perfmon to be sure). If it still fails, then would you mind sending me the counter log, so I can debug this? Upload it to http://bit.ly/PalUpload and then respond to this post to let me know when it is there. I'll delete it shortly after I receive it.

Markhemeon, I'm not sure what your question is in regards to the CSV. PAL converts all BLG files to CSV using relog.exe and saves it to a temporary folder, then deletes it when done. Otherwise, if the counter log is already in CSV, then it doesn't do the conversion. With that said, I still highly recommend recording counter logs in binary (*.blg) due to a capture bug in Performance Monitor where it fails to collect transient counter instances. Binary format is very reliable and highly recommended over CSV data collection.

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/clinthuffman/PAL/issues/47#issuecomment-794526054, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ARRQGTDOCX53FLNSD65JFEDTC2FR7ANCNFSM4IJ4L6VQ.

markhemeon commented 3 years ago

Hi Clint,

I wiped out my old installation and installed PAL 2.8.2.1 from Github. The .dat itself does load into Windows Performance Monitor, but through the process of elimination I’ve discovered that there is some bad data between 8p and the 9p in my log related to my disk measurements, but I can’t for the life of me figure out what that may be. I’ve attached the logging, error dump and the CSV filtered for this time slice. Is there a way that you can programmatically determine where the csv’s problem may be? At the very least maybe this can help build a new data error handler 😊

From: Clint Huffman @.> Sent: Tuesday, March 9, 2021 5:14 PM To: clinthuffman/PAL @.> Cc: Mark Hemeon Comment @.***> Subject: [EXTERNAL] Re: [clinthuffman/PAL] Method invocation failed because [System.Double] does not contain a method named 'GetUpperBound'. (#47)

Sorry, PAL usually creates a detailed PAL.log file to show what its doing and to report detailed errors, but it looks like I forget to re-enable it the last time I published the build. If you open PAL.ps1 and remove the pound (#) symbol at the beginning of line 5462, and then save it. PAL should start writing a log file to your user temporary directory at %temp%\PAL.log or C:\Users[user]\AppData\Local\Temp\PAL.log where [user] is your user name.

The error that was originally posted is very odd. It is basically saying that $global:htCounterInstanceStats is empty. It's pretty far into processing the counter log, so I would have expected it to fail a lot earlier than at this point.

First, make sure all of you are on the latest build and that your respective counter logs are not corrupted (load it into Perfmon to be sure). If it still fails, then would you mind sending me the counter log, so I can debug this? Upload it to http://bit.ly/PalUpload and then respond to this post to let me know when it is there. I'll delete it shortly after I receive it.

Markhemeon, I'm not sure what your question is in regards to the CSV. PAL converts all BLG files to CSV using relog.exe and saves it to a temporary folder, then deletes it when done. Otherwise, if the counter log is already in CSV, then it doesn't do the conversion. With that said, I still highly recommend recording counter logs in binary (*.blg) due to a capture bug in Performance Monitor where it fails to collect transient counter instances. Binary format is very reliable and highly recommended over CSV data collection.

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/clinthuffman/PAL/issues/47#issuecomment-794526054, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ARRQGTDOCX53FLNSD65JFEDTC2FR7ANCNFSM4IJ4L6VQ.

JJvdWest commented 1 year ago

Hi,

Is there a fix for this issue? I am getting the exact same error and I have tried the recommendations mentioned above with no success. I can open the BLG file in Perfmon and I have exported the BLG to CSV and used that as the source for PAL, with same results.

Thanks

clinthuffman commented 1 year ago

Hi JJvdWest,

Sorry to hear that you are hitting this issue. I haven't been able to repro it. Would you mind helping me get a repro, so I can try to fix it? If so, please upload your counter log (.blg or .csv) to https://1drv.ms/f/s!AhuJirRUDDbmqw19Lxlj-8JF4fe7?e=ynEisl and then let me know all of the parameters that you used to process the counter log. Thanks!

JJvdWest commented 1 year ago

Hi,

I uploaded the counter log and used the following parameters;

Powershell -ExecutionPolicy ByPass -NoProfile -File ".\PAL.ps1" -Log "F:\Permon\New folder\PRDRAS0DB01N02_06062023090030.blg" -ThresholdFile "C:\Program Files\PAL\PAL\SQLServer2012.xml" -Interval "AUTO" -IsOutputHtml $True -HtmlOutputFileName "[LogFileName]_PALANALYSIS[DateTimeStamp].htm" -IsOutputXml $False -XmlOutputFileName "[LogFileName]_PALANALYSIS[DateTimeStamp].xml" -OutputDir "F:\Permon\New folder" -AllCounterStats $True -NumberOfThreads 4 -IsLowPriority $True -OLTPvsOLAP $True -OS "Windows Server" -PhysicalMemory "64" -PLEHealth "4500" -UserVa "2048"

I get the following error. @.***

@.***

Thank you for your response.

Regards

From: Clint Huffman @.> Sent: Thursday, June 8, 2023 2:02 PM To: clinthuffman/PAL @.> Cc: JJvdWest @.>; Comment @.> Subject: Re: [clinthuffman/PAL] Method invocation failed because [System.Double] does not contain a method named 'GetUpperBound'. (#47)

Hi JJvdWest,

Sorry to hear that you are hitting this issue. I haven't been able to repro it. Would you mind helping me get a repro, so I can try to fix it? If so, please upload your counter log (.blg or .csv) to https://1drv.ms/f/s!AhuJirRUDDbmqw19Lxlj-8JF4fe7?e=ynEisl and then let me know all of the parameters that you used to process the counter log. Thanks!

- Reply to this email directly, view it on GitHubhttps://github.com/clinthuffman/PAL/issues/47#issuecomment-1581857595, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BANCJYSCNP5FHEGJVV4JLELXKFFEFANCNFSM4IJ4L6VQ. You are receiving this because you commented.Message ID: @.**@.>>

JJvdWest commented 1 year ago

Hi Clint,

Have you received the uploaded files?

Regards Johan

From: Clint Huffman @.> Sent: Thursday, June 8, 2023 2:02 PM To: clinthuffman/PAL @.> Cc: JJvdWest @.>; Comment @.> Subject: Re: [clinthuffman/PAL] Method invocation failed because [System.Double] does not contain a method named 'GetUpperBound'. (#47)

Hi JJvdWest,

Sorry to hear that you are hitting this issue. I haven't been able to repro it. Would you mind helping me get a repro, so I can try to fix it? If so, please upload your counter log (.blg or .csv) to https://1drv.ms/f/s!AhuJirRUDDbmqw19Lxlj-8JF4fe7?e=ynEisl and then let me know all of the parameters that you used to process the counter log. Thanks!

- Reply to this email directly, view it on GitHubhttps://github.com/clinthuffman/PAL/issues/47#issuecomment-1581857595, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BANCJYSCNP5FHEGJVV4JLELXKFFEFANCNFSM4IJ4L6VQ. You are receiving this because you commented.Message ID: @.**@.>>

clinthuffman commented 1 year ago

Yes, I received it and I'm able to repro the problem. Thanks for the upload! I'll debug it and post here what I find.