That seems to have taken care of it. This is what I’ve ended up with –
mysql> SHOW COLUMNS FROM ports;
+-------------------------+--------------+------+-----+-------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------------------+--------------+------+-----+-------------------+----------------+
| port_id | int(11) | NO | PRI | NULL | auto_increment |
| device_id | int(11) | NO | MUL | 0 | |
| port_64bit | tinyint(1) | YES | | NULL | |
| port_label | varchar(255) | NO | | | |
| port_label_base | varchar(255) | YES | | NULL | |
| port_label_num | varchar(64) | YES | | NULL | |
| port_label_short | varchar(255) | YES | | NULL | |
| port_descr_type | varchar(255) | YES | | NULL | |
| port_descr_descr | varchar(255) | YES | | NULL | |
| port_descr_circuit | varchar(255) | YES | | NULL | |
| port_descr_speed | varchar(32) | YES | | NULL | |
| port_descr_notes | varchar(255) | YES | | NULL | |
| ifDescr | varchar(255) | YES | MUL | NULL | |
| ifName | varchar(64) | YES | | NULL | |
| ifIndex | int(11) | NO | | NULL | |
| ifSpeed | bigint(20) | YES | | NULL | |
| ifConnectorPresent | varchar(12) | YES | | NULL | |
| ifPromiscuousMode | varchar(12) | YES | | NULL | |
| ifHighSpeed | int(11) | YES | | NULL | |
| ifOperStatus | varchar(16) | YES | | NULL | |
| ifAdminStatus | varchar(16) | YES | | NULL | |
| ifDuplex | varchar(12) | YES | | NULL | |
| ifMtu | int(11) | YES | | NULL | |
| ifType | varchar(32) | YES | | NULL | |
| ifAlias | varchar(255) | YES | | NULL | |
| ifPhysAddress | varchar(16) | YES | | NULL | |
| ifHardType | varchar(64) | YES | | NULL | |
| ifLastChange | timestamp | NO | | CURRENT_TIMESTAMP | |
| ifVlan | varchar(16) | YES | | NULL | |
| ifTrunk | varchar(8) | YES | | NULL | |
| ifVrf | int(16) | YES | | NULL | |
| encrypted | tinyint(1) | NO | | 0 | |
| ignore | tinyint(1) | NO | | 0 | |
| disabled | tinyint(1) | NO | | 0 | |
| detailed | tinyint(1) | NO | | 0 | |
| deleted | tinyint(1) | NO | | 0 | |
| pagpOperationMode | varchar(32) | YES | | NULL | |
| pagpPortState | varchar(16) | YES | | NULL | |
| pagpPartnerDeviceId | varchar(48) | YES | | NULL | |
| pagpPartnerLearnMethod | varchar(16) | YES | | NULL | |
| pagpPartnerIfIndex | int(11) | YES | | NULL | |
| pagpPartnerGroupIfIndex | int(11) | YES | | NULL | |
| pagpPartnerDeviceName | varchar(128) | YES | | NULL | |
| pagpEthcOperationMode | varchar(16) | YES | | NULL | |
| pagpDeviceId | varchar(48) | YES | | NULL | |
| pagpGroupIfIndex | int(11) | YES | | NULL | |
+-------------------------+--------------+------+-----+-------------------+----------------+
46 rows in set (0.01 sec)
mysql>
From: observium [mailto:observium-bounces@observium.org]
On Behalf Of Adam Armstrong
Sent: Friday, February 12, 2016 6:05 PM
To: observium@observium.org
Subject: Re: [Observium] All ports at each polling showing "interface changed:" event log
port_label_base was added to that table in December.
There may be more serious problems with your database if this field is missing, but you can try to create it by replicating the schema changes :
ALTER TABLE `ports` ADD `port_label_base` VARCHAR( 128 ) NOT NULL AFTER `port_label` ;
ALTER TABLE `ports` ADD `port_label_num` VARCHAR( 16 ) NOT NULL AFTER `port_label_base` ;
ALTER TABLE `ports` CHANGE `port_label_base` `port_label_base` VARCHAR( 128 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ;
ALTER TABLE `ports` CHANGE `port_label_base` `port_label_base` VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, CHANGE `port_label_num` `port_label_num`
VARCHAR(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL;
Though, there may be other tables with missing fields, depending upon what caused this field not to be created.
You can look in update-errors.log (in the logs directory) to see why this field wasn't created.
adam.
On 13/02/2016 01:21:59, Matt Ladewig <matt@univoip.com> wrote:
err… svn updates.
From: observium [mailto:observium-bounces@observium.org] On Behalf Of Matt Ladewig
Sent: Friday, February 12, 2016 5:19 PM
To: Observium Network Observation System <observium@observium.org>
Subject: Re: [Observium] All ports at each polling showing "interface changed:" event log
We’ve been running for over a year without issue. This came up within the last month or so from what we can tell. No mysql server changes, only Observium csv updates.
From: observium [mailto:observium-bounces@observium.org] On Behalf Of Adam Armstrong
Sent: Friday, February 12, 2016 4:30 PM
To: Observium Network Observation System <observium@observium.org>
Subject: Re: [Observium] All ports at each polling showing "interface changed:" event log
This is likely because your mysql server has been set to strict mode.
Foolishly this is now the default for some distros, despite a lot of stuff still not being quite ready for it!
Adam.
Sent from BlueMail
On Feb 12, 2016, at 22:40, Matt Ladewig <matt@univoip.com> wrote:
This is also causing other issues. Port name and admin/physical status updates during polling is not working.
Please assist.
Matt
From: observium [mailto:observium-bounces@observium.org] On Behalf Of Matt Ladewig
Sent: Friday, February 12, 2016 9:13 AM
To: Observium Network Observation System <observium@observium.org>
Subject: [Observium] All ports at each polling showing "interface changed:" event log
We are at 7608.
During each polling run, every port on our system shows an interface changed event log:
https://s3.amazonaws.com/uploads.hipchat.com/131939/956300/RLSqGEGgF09oIZS/upload.png
Here is the port poller from one device showing this issue:
This error stands out:
SQL[UPDATE `ports` set `port_label_base` ='Null',`port_label_num` ='0',`ifLastChange` ='2015-05-19 05:42:34' WHERE `port_id` = '3872']
SQL RUNTIME[0.00006795s]
ERROR[Error in query: (Unknown column 'port_label_base' in 'field list') 1054]
PORT updated rows=
Looks like I’m missing some structure from my DB. Please let me know what is needed to sort this out.
Thanks,
Matt
observium mailing list
observium@observium.org
http://postman.memetic.org/cgi-bin/mailman/listinfo/observium