Difference between revisions of "YAML"
From Teknologisk videncenter
m (→Scalars) |
m (→Strings) |
||
Line 51: | Line 51: | ||
** Name: | ** Name: | ||
− | == | + | ==examples== |
+ | <source lang=yaml> | ||
+ | db_connect: | ||
+ | host: "127.0.0.1" | ||
+ | user: "USERNAME" | ||
+ | password: "PASSWORD" | ||
+ | port: "3306" | ||
+ | database: "nmsdb" | ||
+ | |||
+ | db_create: | ||
+ | # Equipment - devices under network management | ||
+ | equipment: > | ||
+ | CREATE TABLE `equipment` ( | ||
+ | `hostname_id` INT NOT NULL AUTO_INCREMENT, | ||
+ | `hostname` VARCHAR(128) DEFAULT NULL, | ||
+ | `name` VARCHAR(128) DEFAULT NULL, | ||
+ | `date_created` date DEFAULT NULL, | ||
+ | `community` VARCHAR(128) DEFAULT NULL, | ||
+ | `snmp_ver` TINYINT DEFAULT NULL, | ||
+ | `interval` INT UNSIGNED DEFAULT NULL, | ||
+ | PRIMARY KEY (`hostname_id`), | ||
+ | UNIQUE(`hostname`) | ||
+ | ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; | ||
+ | oids: > | ||
+ | CREATE TABLE `oids` ( | ||
+ | `oid_id` INT NOT NULL AUTO_INCREMENT, | ||
+ | `oid` VARCHAR(256), | ||
+ | `easyname` VARCHAR(64), | ||
+ | `description` VARCHAR(512), | ||
+ | PRIMARY KEY (`oid_id`) | ||
+ | ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; | ||
+ | |||
+ | |||
+ | # Only numeric data allowed in this version | ||
+ | probes: > | ||
+ | CREATE TABLE `probes` ( | ||
+ | `probe_id` INT NOT NULL AUTO_INCREMENT, | ||
+ | `oid` INT NOT NULL, | ||
+ | `hostname` INT NOT NULL, | ||
+ | PRIMARY KEY (`probe_id`), | ||
+ | CONSTRAINT `fk_oid_id` FOREIGN KEY (`oid`) REFERENCES `oids` (`oid_id`), | ||
+ | CONSTRAINT `fk_hostname` FOREIGN KEY (`hostname`) REFERENCES `equipment` (`hostname_id`) | ||
+ | ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; | ||
+ | |||
+ | probe_data: > | ||
+ | CREATE TABLE `probe_data` ( | ||
+ | `probe_data_id` INT NOT NULL AUTO_INCREMENT, | ||
+ | `probe` INT NOT NULL, | ||
+ | `timestamp` BIGINT NOT NULL, | ||
+ | `value` BIGINT NOT NULL, | ||
+ | PRIMARY KEY (`probe_data_id`), | ||
+ | CONSTRAINT `fk_probe` FOREIGN KEY (`probe`) REFERENCES `probes` (`probe_id`) | ||
+ | ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; | ||
+ | </source> |
Revision as of 08:16, 20 March 2025
Structure
Block and flow style
Block style
Lists:
fruits:
- apple
- banana
- orange
Maps/dictionary:
address:
street: "H.C. Andersens vej 9"
city: Viborg
zip: 8800
Flow style
Lists:
fruits: [apple, banana, orange]
Maps:/dictionary:
address: {street: "H.C. Andersens vej 9", city: Viborg, zip: 8800 }
Data types
Scalars
- Strings
- text1: "This is a string"
- text2: 'This is also a string'
- text3: This is a string too
- text4: "2999"
- text5: | #Multiline string - Preserve new line chars
Line1 Line2
- text6: > #Multiline string - Convert new line to space
Line1 Line2
- Numbers
- 2999
- 2e+10
- Booleans
- true
- false
- Dates
- "2025-01-01" # ISO-8601 standard
- Null
- Name: null
- Name: ~
- Name:
examples
db_connect:
host: "127.0.0.1"
user: "USERNAME"
password: "PASSWORD"
port: "3306"
database: "nmsdb"
db_create:
# Equipment - devices under network management
equipment: >
CREATE TABLE `equipment` (
`hostname_id` INT NOT NULL AUTO_INCREMENT,
`hostname` VARCHAR(128) DEFAULT NULL,
`name` VARCHAR(128) DEFAULT NULL,
`date_created` date DEFAULT NULL,
`community` VARCHAR(128) DEFAULT NULL,
`snmp_ver` TINYINT DEFAULT NULL,
`interval` INT UNSIGNED DEFAULT NULL,
PRIMARY KEY (`hostname_id`),
UNIQUE(`hostname`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
oids: >
CREATE TABLE `oids` (
`oid_id` INT NOT NULL AUTO_INCREMENT,
`oid` VARCHAR(256),
`easyname` VARCHAR(64),
`description` VARCHAR(512),
PRIMARY KEY (`oid_id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
# Only numeric data allowed in this version
probes: >
CREATE TABLE `probes` (
`probe_id` INT NOT NULL AUTO_INCREMENT,
`oid` INT NOT NULL,
`hostname` INT NOT NULL,
PRIMARY KEY (`probe_id`),
CONSTRAINT `fk_oid_id` FOREIGN KEY (`oid`) REFERENCES `oids` (`oid_id`),
CONSTRAINT `fk_hostname` FOREIGN KEY (`hostname`) REFERENCES `equipment` (`hostname_id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
probe_data: >
CREATE TABLE `probe_data` (
`probe_data_id` INT NOT NULL AUTO_INCREMENT,
`probe` INT NOT NULL,
`timestamp` BIGINT NOT NULL,
`value` BIGINT NOT NULL,
PRIMARY KEY (`probe_data_id`),
CONSTRAINT `fk_probe` FOREIGN KEY (`probe`) REFERENCES `probes` (`probe_id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;