Getting Data In

Scripted input printing System.object[] instead of string?

andrew207
Path Finder

I have a batch file that executes PowerShell like so:

inputs.conf

[script://.\bin\myscript.bat]
disabled = 0
interval = 60
index = main

The script is (myscript.bat):

type "%PROGRAMFILES%\Splunk\etc\apps\TA-myapp\bin\print-info.ps1" | powershell.exe -noprofile -

The PowerShell we are executing is (print-info.ps1):

$ProcessList = (Get-Process | select Name,Handle)
$ProcessList | Add-Member scriptmethod ToString { 'Name="{0}" Handle="{1}"' -f $this.Name, $this.Handle } -Force
$ProcessList.ToString() | Out-File -Append -NoClobber -Encoding utf8 -FilePath "$env:programfiles\Splunk\etc\apps\TA-myapp\spool\print-info.log"

If I execute the .BAT script manually (double clicking it), this works fine and the file is appended with text as I expect. If Splunk executes it, the file is instead appended with

System.Object[]

How do I get Splunk to output the string that it's supposed to be outputting?

We are unable to use the PowerShell modular input in our environment.

Get Updates on the Splunk Community!

Data Management Digest – December 2025

Welcome to the December edition of Data Management Digest! As we continue our journey of data innovation, the ...

Index This | What is broken 80% of the time by February?

December 2025 Edition   Hayyy Splunk Education Enthusiasts and the Eternally Curious!    We’re back with this ...

Unlock Faster Time-to-Value on Edge and Ingest Processor with New SPL2 Pipeline ...

Hello Splunk Community,   We're thrilled to share an exciting update that will help you manage your data more ...