Monitorar o FTP no IIS 8.5 e executar o script no upload

1

Estou executando o IIS 8.5 no Windows Server 2012 R2. É possível monitorar uma conta de ftp e se um determinado tipo de arquivo é carregado EG. * .jpg ou * .png, dispara um script powershell automaticamente para comprimir / otimizar o arquivo?

Obrigado.

Editar. Eu tenho brincado com o objeto System.IO.FileSystemWatcher para monitorar pastas e, em seguida, otimizá-las em lote em um determinado momento. Mas eu não estou muito interessado nessa ideia (veja meu comentário abaixo). Mas isso é o que eu tenho até agora.

O script de monitoramento

$watcher = New-Object System.IO.FileSystemWatcher
$watcher.Path = "C:\WebSites"
$watcher.Filter = "*.jpg"
$watcher.IncludeSubdirectories = $true
$watcher.EnableRaisingEvents = $true  

$action = { $path = $Event.SourceEventArgs.FullPath
            $changeType = $Event.SourceEventArgs.ChangeType
            $logline = "$(Get-Date), $changeType, $path"
            Write-Host $path, $changeType
            Add-content "C:\Testing\log.txt" -value $path
            }    

Register-ObjectEvent $watcher "Created" -Action $action
Register-ObjectEvent $watcher "Changed" -Action $action

while ($true) {sleep 5}

E então esse script seria executado por meio do Agendador de Tarefas em um determinado momento:

$A = $(foreach ($line in Get-Content "C:\Testing\log.txt")
{$line}) | sort | Get-Unique
Clear-Content "C:\Testing\log.txt"

& 'E:\Program Files\FileOptimizer\FileOptimizer64.exe'  $A /JPEGCopyMetadata=false/JPEGUseArithmeticEncoding=false/JPEGAllowLossy=true/ProcessPriority=128/DoNotCreateBackups=true
    
por Strontium_99 19.02.2018 / 11:07

1 resposta

1

Atualização para qualquer pessoa interessada. Analisando o uso do Gerenciador de Recursos do Servidor de Arquivos para monitorar isso.

Levanta outra pergunta, mas vou fechar esta agora.

    
por 21.02.2018 / 11:50