Closed bbigras closed 7 years ago
Hi @brunoqc! Thanks for reporting, and apologies for the slow response, I'm travelling with poor internet access. The error you're getting is a generic "something went wrong". Here are a few things to check:
It could also be related to some inconpatibility between the Windows Installer framework features we're using and what Windows 2003 provides. I'll need to do some research on that though, which will have to wait a few days until I'm home.
- Is there a pending restart?
That is very possible. It's a server that doesn't reboot often.
- How are you starting the installer?
I tried both.
- Does the user you are starting as have enough permissions to install in the Program Files directory?
Yes
I'll try to schedule a server restart tonight and test again tomorrow.
@brunoqc Did you manage to test the reboot? In case that did not fix it, some more questions:
msiexec /i D:\wmi_exporter-0.1.1-amd64.msi /l*v D:\wmi_exporter-installer.log
Did you manage to test the reboot?
No. Well I tried twice but I think I didn't use quotes the right way when running the at command. I'm trying again tonight.
Does the server have any service packs installed?
Windows Server 2003 R2 with Service Pack 2.
Could you try the installation with logging enabled?
@brunoqc Thanks! I found this in the logs:
ExecFirewallExceptions: FirewallExtension: Cannot add firewall rule 'WMI Exporter (HTTP 9182)', which defines both an application and a port or protocol. Such a rule requires Microsoft Windows Vista or later.
So, we're using too modern features, basically. Are you having the firewall activated? If I recall correctly it was not on by default in those older versions. Maybe we should just skip installing the firewall rule for old versions? Alternatively we could have some installer flag for toggling it off.
I've build a custom msi without the firewall rule, could you give it a shot and see if it works better? https://www.dropbox.com/s/8ruzllesvvifh41/wmi_exporter-0.1.1-amd64.msi?dl=0
Are you having the firewall activated?
No. The "Windows Firewall/Internet Connection Sharing (ICS) service" is not running.
Maybe we should just skip installing the firewall rule for old versions?
Can you detect if it's activated with the msi?
I've build a custom msi without the firewall rule
It works!
Ok, great! Then there aren't other things that also break :) As for detection - msi:s conditions are pretty simplistic in themselves. I'll have to check the docs, but it would probably require building a custom dll for the installer and all the associated maintenance. So, I'd probably rather provide a flag for those slightly older OSes than make the normal flow hard to understand. Seems reasonable?
Seems reasonable?
Yes. A flag is fine.
Hi! Is the flag included in the installer as of today? Dropbox link is dead
Hi @franciscomorra I think the link that @carlpett provided above on Dropbox only had extra logging enabled in order to track down this original bug. As far as i can tell, the flag hasn't been implemented yet.
If you are running Windows Server 2003, you could try out the non-installer download option instead. Also be aware of #49, meaning you would need to disable the "cs" collector
@franciscomorra I started working on the flag yesterday, however, due to the events in Stockholm, I was not able finish that work. It should be pretty straightforward once I have time to work on it, though.
@franciscomorra What was your use-case for the flag? Are you also using a version which does not support the Windows Firewall? I just noticed that there is actually an option when creating the firewall to ignore errors. This would be a much simpler solution, but it would not provide for the use-case of not creating the firewall rule on versions of Windows which support it.
@carlpett Exactly, the error in Windows Server 2003 is the same as @bbigras Right now i got it working with the .exe without installing as a service so the error must be on the firewall config of the .msi
I got these 4 events: