Below you will find a set of instructions on how to wrap Elastic winlogbeat in a 64bit MSI installer package using Visual Studio and WiX. At the bottom of this readme you will find a link to download a pre-built winlogbeat MSI that uses the default configuration as it ships from Elastic. After installation, the winlogbeat service will be started automatically.
- Visual Studio - https://www.visualstudio.com/vs/community/
- WiX Toolset - http://wixtoolset.org/releases/
- WiX Toolset VS extension - https://marketplace.visualstudio.com/items?itemName=RobMensching.WixToolsetVisualStudio2017Extension
- Latest winlogbeat (x64) version from Elastic - https://www.elastic.co/downloads/beats/winlogbeat
- The modified install powershell script and license.rtf copy located in this repo.
- After downloading and installing all requirements above, create new WiX project in Visual Studio.
- Add the following references:
- C:\Program Files (x86)\WiX Toolset v3.11\bin\WixPSExtension.dll
- C:\Program Files (x86)\WiX Toolset v3.11\bin\WixUIExtension.dll
- C:\Program Files (x86)\WiX Toolset v3.11\bin\WixUtilExtension.dll
- Copy and and paste the Product.wxs code into your project.
- Copy and paste the contents of the winlogbeat folder downloaded from Elastic into your Wix project folder.
- Replace the default install powershell script with the one from this repo.
- Place the License.rtf in your wix project folder (this file is used when intalling winlogbeat via the installer GUI).
- Make adjustments to the winlogbeat.yml to match your envirnoment.
- Create new GUIDs (there's is a GUID generator add-on for VS available here https://marketplace.visualstudio.com/items?itemName=kylebahrke.GenerateGUIDforVisualStudio2015)
- Modify the Product.wxs as you need
- Build the solution