diff --git a/build/default/omc.yaml b/build/default/omc.yaml index 53cba0f1..e952b3de 100644 --- a/build/default/omc.yaml +++ b/build/default/omc.yaml @@ -1,10 +1,82 @@ # server version: std/lite serverVersion: "std" +# operation mode system/docker +# serverMode: "system" +# login authentication, default true +# serverLoginAuth: true +# interface encryption, default false +# serverCryptoApi: false -# database for server version + +# service listen ipv4/v6 and port, support multiple routines +# ip: 0.0.0.0 or ::0, support IPv4/v6 +server: + - ipv4: 0.0.0.0 + ipv6: "" + port: 33030 + schema: http + - ipv4: 0.0.0.0 + ipv6: "" + port: 33443 + schema: https + certFile: /usr/local/etc/omc/certs/www.omc.net.crt + keyFile: /usr/local/etc/omc/certs/www.omc.net.key + + +# web service configuration +# if you are using nginx to take over, you can disable the +webServer: + enabled: true + rootDir: /usr/local/etc/omc/web + listen: + - addr: 0.0.0.0:80 + schema: http + - addr: 0.0.0.0:443 + schema: https + certFile: /usr/local/etc/omc/certs/www.omc.net.crt + keyFile: /usr/local/etc/omc/certs/www.omc.net.key + + +# track configuration for NE +trace: + enabled: false + host: "172.16.5.100" # fill in the specific IP address + port: 33033 + + +# data source database: + # default data source name defaultDataSourceName: "std" - + # dataSource: + # # std: standard + # std: + # type: "mysql" + # host: "127.0.0.1" + # port: 3306 + # username: "" + # password: "" + # database: "" + # logging: false + # # lite: lite + # lite: + # type: "sqlite" + # database: "" + # logging: false + + +# redis cached data +redis: + # default data source name + defaultDataSourceName: "default" + # dataSource: + # default: + # port: 6379 # port + # host: "127.0.0.1" # host + # password: "" + # db: 10 # db_num + + # file: log file name # level: /trace/debug/info/warn/error/fatal, default: debug # duration: rotation time with xx hours, example: 1/12/24 hours @@ -15,31 +87,6 @@ logger: duration: 24 count: 90 -# rest agent listen ipv4/v6 and port, support multiple routines -# ip: 0.0.0.0 or ::0, support IPv4/v6 -rest: - - ipv4: 0.0.0.0 - ipv6: "" - port: 33030 - schema: http - - ipv4: 0.0.0.0 - ipv6: "" - port: 33443 - schema: https - certFile: /usr/local/etc/omc/certs/omc-server.crt - keyFile: /usr/local/etc/omc/certs/omc-server.key - -webServer: - enabled: true - rootDir: /usr/local/etc/omc/web - listen: - - addr: 0.0.0.0:80 - schema: http - - addr: 0.0.0.0:443 - schema: https - certFile: /usr/local/etc/omc/certs/omc-web.crt - keyFile: /usr/local/etc/omc/certs/omc-web.key - # sleep: time delay for after write buffer (millisecond) # deadLine: timeout for io read and write (second) mml: @@ -50,12 +97,6 @@ mml: bufferSize: 65535 mmlHome: ./mmlhome -# Tracking configuration -trace: - enabled: false - host: "172.16.5.100" # Fill in the specific IP address - port: 33033 - # NE config ne: user: omcuser diff --git a/features/pm/performance.go b/features/pm/performance.go index d44f8128..42351e7b 100644 --- a/features/pm/performance.go +++ b/features/pm/performance.go @@ -692,7 +692,7 @@ func PostMeasureTaskToNF(w http.ResponseWriter, r *http.Request) { } log.Debug("ips:", ips) - measureTask.NotifyUrl = global.SetNotifyUrl(ips[0], config.GetYamlConfig().Rest[0].Port, fmt.Sprintf(MeasureReportFmt, neType)) + measureTask.NotifyUrl = global.SetNotifyUrl(ips[0], 33030, fmt.Sprintf(MeasureReportFmt, neType)) log.Debug("Measure Task to NF:", measureTask) if len(task.NeIds) == 0 { diff --git a/features/state/getstate.go b/features/state/getstate.go index bcb9135c..40cb1a3b 100644 --- a/features/state/getstate.go +++ b/features/state/getstate.go @@ -21,6 +21,7 @@ import ( cfg "be.ems/src/framework/config" "be.ems/src/framework/constants" "be.ems/src/framework/database/db" + "be.ems/src/framework/utils/parse" ) type CpuUsage struct { @@ -914,7 +915,15 @@ func GetEMSState(ip string) *SysState { if expiryDateStr == "" { expiryDateStr = "-" } - + var port uint16 = 33030 + httpArr := cfg.Get("server") + if httpArr != nil { + arr := httpArr.([]any) + if len(arr) > 1 { + rest := arr[0].(map[string]any) + port = uint16(parse.Number(rest["port"])) + } + } hostName, _ := os.Hostname() dbInfo := getDbInfo() emsState := &SysState{ @@ -922,7 +931,7 @@ func GetEMSState(ip string) *SysState { OsInfo: getUnameStr(), DbInfo: dbInfo, IpAddr: ipAddrs, - Port: config.GetYamlConfig().Rest[0].Port, + Port: port, Version: global.Version, Capability: CapabilityInt, SerialNum: snStr, diff --git a/lib/config/config.go b/lib/config/config.go index defe006d..25818264 100644 --- a/lib/config/config.go +++ b/lib/config/config.go @@ -22,39 +22,6 @@ type YamlConfig struct { Count int `yaml:"count"` } `yaml:"logger"` - Pprof struct { - Enabled bool `yaml:"enabled"` - Addr string `yaml:"addr"` - } `yaml:"pprof"` - - // Rest []struct { - // IPv4 string `yaml:"ipv4"` - // IPv6 string `yaml:"ipv6"` - // Port uint16 `yaml:"port"` - // Scheme string `yaml:"scheme"` - // ClientAuthType int `yaml:"clientAuthType"` - // CaFile string `yaml:"caFile"` - // CertFile string `yaml:"certFile"` - // KeyFile string `yaml:"keyFile"` - // } `yaml:"rest"` - - Rest []RestParam - - WebServer struct { - Enabled bool `yaml:"enabled"` - RootDir string `yaml:"rootDir"` - Listen []struct { - Addr string `yaml:"addr"` - Scheme string `yaml:"scheme"` - ClientAuthType int `yaml:"clientAuthType"` - CaFile string `yaml:"caFile"` - CertFile string `yaml:"certFile"` - KeyFile string `yaml:"keyFile"` - } `yaml:"listen"` - } `yaml:"webServer"` - - // Database DbConfig `yaml:"database"` - OMC struct { UriPrefix string `yaml:"uriPrefix"` NeType string `yaml:"neType"` @@ -128,17 +95,6 @@ type YamlConfig struct { } `yaml:"testConfig"` } -type RestParam struct { - IPv4 string `yaml:"ipv4"` - IPv6 string `yaml:"ipv6"` - Port uint16 `yaml:"port"` - Scheme string `yaml:"scheme,omitempty" default:"http"` - ClientAuthType int `yaml:"clientAuthType"` - CaFile string `yaml:"caFile"` - CertFile string `yaml:"certFile"` - KeyFile string `yaml:"keyFile"` -} - // type DbConfig struct { // Type string `yaml:"type"` // User string `yaml:"user"` @@ -486,23 +442,6 @@ func GetDefaultUserAgent() string { return "OMC/" + global.Version } -func GetOMCHostUrl() string { - var omcip string = "127.0.0.1" - var rest RestParam = yamlConfig.Rest[0] - var port uint16 = rest.Port - if rest.IPv4 != "0.0.0.0" && rest.IPv4 != "" { - omcip = rest.IPv4 - } else if rest.IPv6 != "::" && rest.IPv6 != "" { - omcip = "[" + rest.IPv6 + "]" - } - var scheme string = "http" - if rest.Scheme != "" { - scheme = rest.Scheme - } - - return fmt.Sprintf("%s://%s:%d", scheme, omcip, port) -} - // const defaultConfigFile = "./etc/restconf.yaml" // func init() { diff --git a/local/certs/omc-server.crt b/local/certs/omc-server.crt deleted file mode 100644 index bb91ed0b..00000000 --- a/local/certs/omc-server.crt +++ /dev/null @@ -1,23 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIDxTCCAq2gAwIBAgIUJLpIo8eueW/in9CvXZdr3oAVVJwwDQYJKoZIhvcNAQEL -BQAwcjELMAkGA1UEBhMCQVUxDDAKBgNVBAgMA09NQzERMA8GA1UEBwwIT01DLVRl -YW0xITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEMMAoGA1UECwwD -T01DMREwDwYDVQQDDAhPTUMtVGVhbTAeFw0yNTAzMTQwNzQ2MTNaFw0yNjAzMTQw -NzQ2MTNaMHIxCzAJBgNVBAYTAkFVMQwwCgYDVQQIDANPTUMxETAPBgNVBAcMCE9N -Qy1UZWFtMSEwHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxDDAKBgNV -BAsMA09NQzERMA8GA1UEAwwIT01DLVRlYW0wggEiMA0GCSqGSIb3DQEBAQUAA4IB -DwAwggEKAoIBAQDbSyUIbKefOlKStnr+rRwVlkr1IXdMsXmmEV9zoapXDz4j4N0H -9pzEkpwvxbP+r5186CfKzueHBNc7HWinm4wSCDR6exaxG3YGODxMuLnKGPtG2tml -XBf7USeiMGNKYEF/KWmjjIPw4/9P+6qdIuneX7i0AdGynJI+3JPDT8Iwky2Cm5B4 -LRJTSJMfHO0ayrWPDoUCvKIst8w9GkFLjsbZU+AppjWj0rYWc04Oci7zqoUiFeBh -mnQKbCVrlZ4i2CKwgfuxQV2ieSkQ0QoTAXDjocrL/mRmnpvoH0jB2np3OfVlEPBP -pR4q71vuUNkra/F4zPQRPUlqemfo8+4/k3TPAgMBAAGjUzBRMB0GA1UdDgQWBBTN -+1JjU2yWzQMeSMzS5HItc4WMHDAfBgNVHSMEGDAWgBTN+1JjU2yWzQMeSMzS5HIt -c4WMHDAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQBZV5RfuZ2R -0Nhs05apqwFFg8k0vJ26KMXr0i6YnlKpksEYqjXqmB58qHze6sOy7h3248FyTFlC -5YWWwwOAMiPjiH4NKMnqTthdUA4kiZiGs92jB4U/GS3lHTpsXzNssvQ8Dys7zKoj -HxnJlYpT8F6/waPPRakuP657BAVux5aAloRtqd6kGV3Donp4DwEmhdZpn6Q12igw -/+m1e9Xhxiv++H+OXzTXLerQOuUkTzKw7Ajj3hY93SeX6DOONMmoyuV1undxbvWp -lVZXo9iTGfrMkiyKF75LUyBRvvd7K5MVXJwxu0l5rvnpn6/aO1+2BUCf1ldd9VEw -DSbfrW2FfOmc ------END CERTIFICATE----- diff --git a/local/certs/omc-server.key b/local/certs/omc-server.key deleted file mode 100644 index 0e2c6add..00000000 --- a/local/certs/omc-server.key +++ /dev/null @@ -1,28 +0,0 @@ ------BEGIN PRIVATE KEY----- -MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDbSyUIbKefOlKS -tnr+rRwVlkr1IXdMsXmmEV9zoapXDz4j4N0H9pzEkpwvxbP+r5186CfKzueHBNc7 -HWinm4wSCDR6exaxG3YGODxMuLnKGPtG2tmlXBf7USeiMGNKYEF/KWmjjIPw4/9P -+6qdIuneX7i0AdGynJI+3JPDT8Iwky2Cm5B4LRJTSJMfHO0ayrWPDoUCvKIst8w9 -GkFLjsbZU+AppjWj0rYWc04Oci7zqoUiFeBhmnQKbCVrlZ4i2CKwgfuxQV2ieSkQ -0QoTAXDjocrL/mRmnpvoH0jB2np3OfVlEPBPpR4q71vuUNkra/F4zPQRPUlqemfo -8+4/k3TPAgMBAAECggEACunzfuGBeiWPRH6md77/0yc2tc/OPdfmA64rqk0/yrNs -gUvzVC524OWhtlLy7AMA0IhGqrZKGZMpGb0TSfwuKBuWbl4VOV1Hg3Rls9/MXKg0 -9p11EDYZeh2GM8aQD9HjO0PsCQK48lKL5gbSwp1L4bsGg0Galna/ueHad3GkatcL -aSlFnnvzk4glAxT093F43lAxS463iPX7ueG/2322z0Ib+c6wGEFRcoYNI0/2Ax/u -6UdWxuHUs+7gDLcVa9FN7vx1UBoqAu49WlCfmtvzDTDyK7xLWlvKCx3O8uSLv4aw -/YMRg/yTulUj0dqIUcs/u/UN6AJc8Xk0H+rTpTfgcQKBgQDyq+FFvtG2xm2Ig0/9 -BLRdXPM4VgyokPxOL+j9H7LJfrjdz0cnGEuoOfBT8hDX2zFgC6dqAESSnAbPVQJP -6PaYJ8UtOWhwNUAfpRlid1/Y3iDRHWOirjeMKZRh6xN95m21FVbJUg6LfxTf8HWA -OgNwPsfjPL1Jdinw+OX++EvTBwKBgQDnVo5vRBqnLJl85Q7WXQFqjW9j7S1P8ZVL -JmAyNHlpdaNCF2VD164qDQEAi2FDLeDgV5UnAxOeDh/0Z0a3ncp8QLUkwqksBqwa -dhsUF5Jf0Dy3EjiP2w6FsTYanKGuTtV44ovlFTtXL1SSn2ijMVS17YmJgz6LhJbE -wvry6Vd1+QKBgAN7/k8PD1nNfZMhN4vNfn18sS1U5vegpU7GF1VTGDEWdbcRm9bu -3V87/bxm1GEVD59ua2f1OwbT4LEnalIVaT0EDSu6EErUKOiLaVLlneWyQsxd3Klg -UQHdMvk4892x6k9YUBex6u2L1JPmkvlVW+lHrX0QyTL91FpWaI8Bp60PAoGBAMR/ -hh7Gl2kWfg1TNyYn+9L47fvP8yQrjOc3YpBieBp2/MRfwPk+U0aOoyJGQchhSNjm -K9/mQhyH3Oapbqz6j4q5H+RooG+v/zG+zkNjvkY6R8gs5vRyWkR/APjbwI2hkrvK -mo9sWGo23rxoQOYVOeIKMUAnxdGWPsZE5Am+4DZpAoGBAJAF8MP5SlNRSF6zM3Lw -Qf5CQjsyXhll+A/ueOf1iQ+8r7xdxa6dNtcTcOZVVDsbXIBJ4/3HGTLfQCcGrhLN -KK9wljtkiYJ0h6IqcXnhp69uRV4SKRInyVEjNkiBotBPu5y6CYz5MAXFdM87q7jO -ehVc6QGJ9vLnfnwEFbAMArmv ------END PRIVATE KEY----- diff --git a/local/certs/omc-web.crt b/local/certs/omc-web.crt deleted file mode 100644 index bb91ed0b..00000000 --- a/local/certs/omc-web.crt +++ /dev/null @@ -1,23 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIDxTCCAq2gAwIBAgIUJLpIo8eueW/in9CvXZdr3oAVVJwwDQYJKoZIhvcNAQEL -BQAwcjELMAkGA1UEBhMCQVUxDDAKBgNVBAgMA09NQzERMA8GA1UEBwwIT01DLVRl -YW0xITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEMMAoGA1UECwwD -T01DMREwDwYDVQQDDAhPTUMtVGVhbTAeFw0yNTAzMTQwNzQ2MTNaFw0yNjAzMTQw -NzQ2MTNaMHIxCzAJBgNVBAYTAkFVMQwwCgYDVQQIDANPTUMxETAPBgNVBAcMCE9N -Qy1UZWFtMSEwHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxDDAKBgNV -BAsMA09NQzERMA8GA1UEAwwIT01DLVRlYW0wggEiMA0GCSqGSIb3DQEBAQUAA4IB -DwAwggEKAoIBAQDbSyUIbKefOlKStnr+rRwVlkr1IXdMsXmmEV9zoapXDz4j4N0H -9pzEkpwvxbP+r5186CfKzueHBNc7HWinm4wSCDR6exaxG3YGODxMuLnKGPtG2tml -XBf7USeiMGNKYEF/KWmjjIPw4/9P+6qdIuneX7i0AdGynJI+3JPDT8Iwky2Cm5B4 -LRJTSJMfHO0ayrWPDoUCvKIst8w9GkFLjsbZU+AppjWj0rYWc04Oci7zqoUiFeBh -mnQKbCVrlZ4i2CKwgfuxQV2ieSkQ0QoTAXDjocrL/mRmnpvoH0jB2np3OfVlEPBP -pR4q71vuUNkra/F4zPQRPUlqemfo8+4/k3TPAgMBAAGjUzBRMB0GA1UdDgQWBBTN -+1JjU2yWzQMeSMzS5HItc4WMHDAfBgNVHSMEGDAWgBTN+1JjU2yWzQMeSMzS5HIt -c4WMHDAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQBZV5RfuZ2R -0Nhs05apqwFFg8k0vJ26KMXr0i6YnlKpksEYqjXqmB58qHze6sOy7h3248FyTFlC -5YWWwwOAMiPjiH4NKMnqTthdUA4kiZiGs92jB4U/GS3lHTpsXzNssvQ8Dys7zKoj -HxnJlYpT8F6/waPPRakuP657BAVux5aAloRtqd6kGV3Donp4DwEmhdZpn6Q12igw -/+m1e9Xhxiv++H+OXzTXLerQOuUkTzKw7Ajj3hY93SeX6DOONMmoyuV1undxbvWp -lVZXo9iTGfrMkiyKF75LUyBRvvd7K5MVXJwxu0l5rvnpn6/aO1+2BUCf1ldd9VEw -DSbfrW2FfOmc ------END CERTIFICATE----- diff --git a/local/certs/omc-web.key b/local/certs/omc-web.key deleted file mode 100644 index 0e2c6add..00000000 --- a/local/certs/omc-web.key +++ /dev/null @@ -1,28 +0,0 @@ ------BEGIN PRIVATE KEY----- -MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDbSyUIbKefOlKS -tnr+rRwVlkr1IXdMsXmmEV9zoapXDz4j4N0H9pzEkpwvxbP+r5186CfKzueHBNc7 -HWinm4wSCDR6exaxG3YGODxMuLnKGPtG2tmlXBf7USeiMGNKYEF/KWmjjIPw4/9P -+6qdIuneX7i0AdGynJI+3JPDT8Iwky2Cm5B4LRJTSJMfHO0ayrWPDoUCvKIst8w9 -GkFLjsbZU+AppjWj0rYWc04Oci7zqoUiFeBhmnQKbCVrlZ4i2CKwgfuxQV2ieSkQ -0QoTAXDjocrL/mRmnpvoH0jB2np3OfVlEPBPpR4q71vuUNkra/F4zPQRPUlqemfo -8+4/k3TPAgMBAAECggEACunzfuGBeiWPRH6md77/0yc2tc/OPdfmA64rqk0/yrNs -gUvzVC524OWhtlLy7AMA0IhGqrZKGZMpGb0TSfwuKBuWbl4VOV1Hg3Rls9/MXKg0 -9p11EDYZeh2GM8aQD9HjO0PsCQK48lKL5gbSwp1L4bsGg0Galna/ueHad3GkatcL -aSlFnnvzk4glAxT093F43lAxS463iPX7ueG/2322z0Ib+c6wGEFRcoYNI0/2Ax/u -6UdWxuHUs+7gDLcVa9FN7vx1UBoqAu49WlCfmtvzDTDyK7xLWlvKCx3O8uSLv4aw -/YMRg/yTulUj0dqIUcs/u/UN6AJc8Xk0H+rTpTfgcQKBgQDyq+FFvtG2xm2Ig0/9 -BLRdXPM4VgyokPxOL+j9H7LJfrjdz0cnGEuoOfBT8hDX2zFgC6dqAESSnAbPVQJP -6PaYJ8UtOWhwNUAfpRlid1/Y3iDRHWOirjeMKZRh6xN95m21FVbJUg6LfxTf8HWA -OgNwPsfjPL1Jdinw+OX++EvTBwKBgQDnVo5vRBqnLJl85Q7WXQFqjW9j7S1P8ZVL -JmAyNHlpdaNCF2VD164qDQEAi2FDLeDgV5UnAxOeDh/0Z0a3ncp8QLUkwqksBqwa -dhsUF5Jf0Dy3EjiP2w6FsTYanKGuTtV44ovlFTtXL1SSn2ijMVS17YmJgz6LhJbE -wvry6Vd1+QKBgAN7/k8PD1nNfZMhN4vNfn18sS1U5vegpU7GF1VTGDEWdbcRm9bu -3V87/bxm1GEVD59ua2f1OwbT4LEnalIVaT0EDSu6EErUKOiLaVLlneWyQsxd3Klg -UQHdMvk4892x6k9YUBex6u2L1JPmkvlVW+lHrX0QyTL91FpWaI8Bp60PAoGBAMR/ -hh7Gl2kWfg1TNyYn+9L47fvP8yQrjOc3YpBieBp2/MRfwPk+U0aOoyJGQchhSNjm -K9/mQhyH3Oapbqz6j4q5H+RooG+v/zG+zkNjvkY6R8gs5vRyWkR/APjbwI2hkrvK -mo9sWGo23rxoQOYVOeIKMUAnxdGWPsZE5Am+4DZpAoGBAJAF8MP5SlNRSF6zM3Lw -Qf5CQjsyXhll+A/ueOf1iQ+8r7xdxa6dNtcTcOZVVDsbXIBJ4/3HGTLfQCcGrhLN -KK9wljtkiYJ0h6IqcXnhp69uRV4SKRInyVEjNkiBotBPu5y6CYz5MAXFdM87q7jO -ehVc6QGJ9vLnfnwEFbAMArmv ------END PRIVATE KEY----- diff --git a/local/certs/www.omc.net.crt b/local/certs/www.omc.net.crt new file mode 100644 index 00000000..33918fe4 --- /dev/null +++ b/local/certs/www.omc.net.crt @@ -0,0 +1,33 @@ +-----BEGIN CERTIFICATE----- +MIIFqzCCA5OgAwIBAgIUd84SMrVmGfyUArN/y78WQY518DIwDQYJKoZIhvcNAQEL +BQAwZTELMAkGA1UEBhMCQ04xDDAKBgNVBAgMAzVHQzEMMAoGA1UEBwwDNUdDMREw +DwYDVQQKDAhPTUMtVGVhbTERMA8GA1UECwwIT01DLVRlYW0xFDASBgNVBAMMC3d3 +dy5vbWMubmV0MB4XDTI1MDQyNzA4NDEzMloXDTM1MDQyNTA4NDEzMlowZTELMAkG +A1UEBhMCQ04xDDAKBgNVBAgMAzVHQzEMMAoGA1UEBwwDNUdDMREwDwYDVQQKDAhP +TUMtVGVhbTERMA8GA1UECwwIT01DLVRlYW0xFDASBgNVBAMMC3d3dy5vbWMubmV0 +MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAm+870e0lMn8f9P/340HS +cXdEoCWsBGRSuYTZVymY3qeX2uRCfxgrV+y0l5HBYS7jfER6Fd58Ixesd9UXPH06 +mWCycl2U1HTxE0miUMVeD37QPYldehy52R/TqXnsCJRBteYvLUlIr1xC0cZR+LYE +4uK0h4VrcANnHrU1c0r1EZIMU1ANZU0EqEOtjUU/+IT/fOUR8MHzTnu20/DpogHU +4v4nG2H94nj5MTzwvjLlTx5EU1VD0J93qHZHkzw+kOWCLDWHf/AkDmBJNHwHPiWK +BC8g7/GENeP8FQY9ZmNtn5whsWOGsjaK4zpiifYz9jpWvDFioDK1CFr0901DRr2q +g2U0qMoMrOFucGIEWLm7ecdWefIjdhWVdhqBP9o1SBtJ1WUIVHfB7ujg8fpA0N8R +o+T4EhSnfwbdJxTvjEZtVPgxBKtrxL47AAjl+TdbY+2f6IU7xBIZn2XLxAiGBFSD +oTL1fm7XOPGKT/NuxOXPCbYiCEeZcipkTFHXXSu274Npwz1xl7rjS2EEaIy6b3QQ +0ks5UquLOP44Wl1IIYwxR+WBQDDXYbklZUHh22lmb02XFc10Cs1m4a/xMFamAklz +hn4WDJTiW5fRgCTJDw6cmCncpvuw5cGjdo9fnsMQYOSLOsg9zzQ5WVjJC3oCu6xJ +p0T2mByiBnwoBK76dhddyF8CAwEAAaNTMFEwHQYDVR0OBBYEFO2829icz/VewU6Q +b9TSwDiG8rFaMB8GA1UdIwQYMBaAFO2829icz/VewU6Qb9TSwDiG8rFaMA8GA1Ud +EwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggIBAIEdlrw1w+d6LgjA6kuf8pmo +yfopjQmFfN4vfJ8sPiTSoY5KdetPmxTc04knpWn9qrUhgtpxoW7ZAXNct3ltGiI/ +zAPDB6jzXFoXfbhYEPpZYLpuGGWr/J9p2fkXTqdzHODcGFoOJuGlMrvxqIWL1raL +BDHajs1ETuyxJEZFXc1NO6LBeJ07eaLykEsyfUy9x7MCbZ0CkuefTnj6MuBchqAn +oxrNupw1G5+36wnFeyK43FAUWHclP4t/S2VvVHYg1U/2qZcRV6Ddxz/Yra/+TRIP +wBU6kMi+2GMjWVDgURfniKXpBfDkE77GKj3OphMZ+EEPXSKHnOF2Un8Mj5fVk86h +F4rSJ4J6LRcyEFf/pB5LT6usk3Buxq5OZjlD9UqGIbakcwCR6grxO7JPab2G8kwr +M6tYxVzW0wDbfm4YNakkpjpcwPHraVvOY1VV6DIfdFuiRP61HdkMu6WxUnd/DXsr +AOGB7gLya8+EtyydgaABolU0y3lZZaR9XCNSe1tTtTQkjik/SWGxxhue6QNR/Rr2 +IGKu2oYtjwnCpir342Bc/OLyTudtYxxHbPXj6/GO1tApYKgG+50KJKx5TXUz9BGM +mqOtLSZLGs3FWKybGmZvPvgurewQqr+inRPYM5Llkeiyis1bg5CVdHL6Bb68VZaJ ++Qv3f5EhOiZfu5jcjdxb +-----END CERTIFICATE----- diff --git a/local/certs/www.omc.net.key b/local/certs/www.omc.net.key new file mode 100644 index 00000000..0ed634b7 --- /dev/null +++ b/local/certs/www.omc.net.key @@ -0,0 +1,52 @@ +-----BEGIN PRIVATE KEY----- +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 +RNodAySNybYrYHj6i4VkgDxYg+FhYg== +-----END PRIVATE KEY----- diff --git a/local/omc.yaml b/local/omc.yaml index dbc79c53..2b8521f3 100644 --- a/local/omc.yaml +++ b/local/omc.yaml @@ -1,24 +1,15 @@ # server version: std/lite serverVersion: "std" +# operation mode system/docker +# serverMode: "system" +# login authentication, default true +# serverLoginAuth: true +# interface encryption, default false +# serverCryptoApi: false -# file: log file name -# level: /trace/debug/info/warn/error/fatal, default: debug -# duration: rotation time with xx hours, example: 1/12/24 hours -# count: rotation count of log, default is 30 rotation -logger: - file: /usr/local/omc/log/omc.log - level: warn - duration: 24 - count: 90 - -# pprof: false(default)/true to disable/enable pprof -pprof: - enabled: true - addr: "0.0.0.0:33060" - -# rest agent listen ipv4/v6 and port, support multiple routines +# service listen ipv4/v6 and port, support multiple routines # ip: 0.0.0.0 or ::0, support IPv4/v6 -rest: +server: - ipv4: "0.0.0.0" ipv6: "" port: 33040 @@ -27,9 +18,11 @@ rest: ipv6: "" port: 33443 schema: https - certFile: ./local/certs/omc-server.crt - keyFile: ./local/certs/omc-server.key + certFile: ./local/certs/www.omc.net.crt + keyFile: ./local/certs/www.omc.net.key +# web service configuration +# if you are using nginx to take over, you can disable the webServer: enabled: false rootDir: ./local/web @@ -38,19 +31,14 @@ webServer: schema: http - addr: "0.0.0.0:443" schema: https - certFile: ./local/certs/omc-web.crt - keyFile: ./local/certs/omc-web.key + certFile: ./local/certs/www.omc.net.crt + keyFile: ./local/certs/www.omc.net.key -# 静态文件配置, 相对项目根路径或填绝对路径 -staticFile: - # 默认资源,dir目录需要预先创建 - default: - prefix: "/static" - dir: "C:/usr/local/omc/static" - # 文件上传资源目录映射,与项目目录同级 - upload: - prefix: "/upload" - dir: "C:/usr/local/omc/upload" +# track configuration for NE +trace: + enabled: true + host: "192.168.5.58" # fill in the specific IP address + port: 33033 # data sources database: @@ -72,18 +60,43 @@ database: # used to specify the default data source for multiple data resourece defaultDataSourceName: "std" -# Redis data cache +# redis cached data redis: dataSource: - # OMC system db default: - port: 16379 # Redis port - host: "192.168.9.58" # Redis host + port: 16379 # port + host: "192.168.9.58" # host password: "helloearth" - db: 10 # Redis db_num - # used to specify the default data source for multiple data resourece + db: 10 # db_num + # default data source name defaultDataSourceName: "default" +# file: log file name +# level: /trace/debug/info/warn/error/fatal, default: debug +# duration: rotation time with xx hours, example: 1/12/24 hours +# count: rotation count of log, default is 30 rotation +logger: + file: "C:/var/log/omc_restagent.log" + level: warn + duration: 24 + count: 90 + +# pprof grafana Performance Monitor +pprof: + enabled: true + addr: "0.0.0.0:33060" + +# 静态文件配置, 相对项目根路径或填绝对路径 +staticFile: + # 默认资源,dir目录需要预先创建 + default: + prefix: "/static" + dir: "C:/usr/local/omc/static" + # 文件上传资源目录映射,与项目目录同级 + upload: + prefix: "/upload" + dir: "C:/usr/local/omc/upload" + # sleep: time delay for after write buffer (millisecond) # deadLine: timeout for io read and write (second) mml: @@ -94,12 +107,6 @@ mml: bufferSize: 65535 mmlHome: ./mmlhome -# Tracking configuration -trace: - enabled: false - host: "172.16.5.100" # Fill in the specific IP address - port: 33033 - # NE config ne: user: omcuser @@ -128,8 +135,8 @@ omc: dn: "" chk2ne: false capability: 50 - sn: "-" - expiryDate: "-" + sn: "12345678" + expiryDate: "2099-12-31" checksign: false rootDir: /usr/local/omc binDir: /usr/local/omc/bin diff --git a/main.go b/main.go index b81c1381..831963f5 100644 --- a/main.go +++ b/main.go @@ -219,20 +219,20 @@ func loadGlobalPre(app *gin.Engine) { // loadServer 多个HTTP服务启动 func loadServer(app *gin.Engine) { - httpArr := config.Get("rest") + httpArr := config.Get("server") if httpArr == nil { - logger.Errorf("rest config not found") + logger.Errorf("server config not found") return } for _, v := range httpArr.([]any) { - rest := v.(map[string]any) - port := parse.Number(rest["port"]) - ipv4 := fmt.Sprint(rest["ipv4"]) - ipv6 := fmt.Sprint(rest["ipv6"]) - schema := fmt.Sprint(rest["schema"]) + item := v.(map[string]any) + port := parse.Number(item["port"]) + ipv4 := fmt.Sprint(item["ipv4"]) + ipv6 := fmt.Sprint(item["ipv6"]) + schema := fmt.Sprint(item["schema"]) if schema == "https" && schema != "" { - certFile := fmt.Sprint(rest["certfile"]) - keyFile := fmt.Sprint(rest["keyfile"]) + certFile := fmt.Sprint(item["certfile"]) + keyFile := fmt.Sprint(item["keyfile"]) addr := "" if ipv4 != "" && ipv4 != "" { addr = fmt.Sprintf("%s:%d", ipv4, port)