Для отслеживания изменений в таблице PostgreSQL с помощью bash скрипта можно использовать инструменты мониторинга баз данных, такие как pg_stat_statements или pg_stat_activity. Например, можно создать bash скрипт, который будет запрашивать информацию о количестве изменений в определенной таблице с помощью SQL-запроса к базе данных и выводить результат в файл или на экран.
Что касается мониторинга количества активных пользователей PostgreSQL через Zabbix, это можно сделать с помощью UserParameter и скрипта на bash. Вот пример скрипта:
```bash
#!/bin/bash
PGUSER="username"
PGPASSWORD="password"
PGHOST="localhost"
PGDATABASE="dbname"
active_users=$(psql -U $PGUSER -h $PGHOST -d $PGDATABASE -c "SELECT count(*) FROM pg_stat_activity WHERE state = 'active';" -t)
echo $active_users
```
Затем добавьте этот скрипт в конфигурацию Zabbix как UserParameter, например:
```plaintext
UserParameter=active_postgres_users,/path/to/your/script.sh
```
Если у вас возникла ошибка при попытке настроить UserParameter, убедитесь, что скрипт имеет правильные разрешения на выполнение и что пользователь, от имени которого работает Zabbix, имеет права на выполнение скрипта и доступ к базе данных PostgreSQL. Также следите за логами Zabbix для более подробной информации об ошибке.
Если вы не можете исправить ошибку или ищете другой способ мониторинга, можно также рассмотреть использование специализированных инструментов мониторинга для PostgreSQL, таких как pg_monitor или pgbadger. Эти инструменты предоставляют более широкий набор функциональностей для мониторинга и анализа производительности PostgreSQL.