{ "archiver": "http", "data": { "schema": 2, "_url": "https://{% scheduled_by_address %}/logstash", "op": "put", "_headers": { "x-ps-observer": "{% scheduled_by_address %}", "content-type": "application/json", "Authorization":"Basic cGVy...." } } } |
ProxyPass /logstash http://localhost:11283 status=+I ProxyPassReverse /logstash http://localhost:11283 status=+I ProxyPreserveHost On <Location /logstash> Authtype Basic AuthUserFile /etc/perfsonar/opensearch/logstash_login |
perfsonar:$apr1.... |
# curl https://localhost/logstash \ -H "Authorization: Basic cGVy...." ok |
- path.config: /etc/logstash/conf.d/*.conf pipeline.id: main - path.config: /usr/lib/perfsonar/logstash/pipeline/*.conf pipeline.id: pscheduler |
# ls /usr/lib/perfsonar/logstash/pipeline 01-inputs.conf 04-iso8601-duration.conf 06-result_rtt.conf 99-outputs.conf 02-pscheduler_common.conf 05-geoip.conf 06-result_throughput.conf 03-normalize_endpoints.conf 06-result_latency.conf 06-result_trace.conf |
input { http { host => "localhost" port => "11283" # ACII 112=p, 83=S } } |
output { #If has [test][type] create index using that in name. if [test][type] { opensearch { hosts => ["${opensearch_output_host}"] ssl_certificate_verification => false user => "${opensearch_output_user}" password => "${opensearch_output_password}" index => "pscheduler_%{[test][type]}-%{+YYYY.MM.dd}" } } } |
## Logstash environment variables. log_level=info opensearch_output_host=https://localhost:9200 opensearch_output_user=pscheduler_logstash opensearch_output_password=pscheduler_logstash XPACK_MONITORING_ENABLED=False LOGSTASH_ELASTIC_USER=pscheduler_logstash |
admin mE...... anomalyadmin vv...... kibanaserver qg...... kibanaro fc...... logstash Nm...... readall E4...... snapshotrestore MK...... pscheduler_logstash Ji...... pscheduler_reader YR...... pscheduler_writer IX...... |
# U=`cat /etc/perfsonar/opensearch/auth_setup.out | head -n 1 | sed -e 's/ /:/g'` # alias CURL="curl -X GET -u $U" # CURL 'https://127.0.0.1:9200/_cluster/health?pretty' { "cluster_name" : "opensearch", "status" : "yellow", "timed_out" : false, "number_of_nodes" : 1, "number_of_data_nodes" : 1, "discovered_master" : true, "discovered_cluster_manager" : true, "active_primary_shards" : 501, "active_shards" : 501, "relocating_shards" : 0, "initializing_shards" : 0, "unassigned_shards" : 499, "delayed_unassigned_shards" : 0, "number_of_pending_tasks" : 0, "number_of_in_flight_fetch" : 0, "task_max_waiting_in_queue_millis" : 0, "active_shards_percent_as_number" : 50.1 } |
# CURL 'https://127.0.0.1:9200/_cat/indices?v' health status index uuid pri rep docs.count docs.deleted store.size pri.store.size yellow open pscheduler_latencybg-2023.05.10 LlDBhY_ES1-nuONvTHdhSg 1 1 29536 0 38.5mb 38.5mb ... yellow open pscheduler_latencybg-2023.09.04 eKlsY1_cRTqfnBxgkekChg 1 1 20246 0 24.4mb 24.4mb yellow open pscheduler_throughput-2023.05.10 pKT63gJAR2aoMDaLREm3GQ 1 1 94 0 880.3kb 880.3kb ... yellow open pscheduler_throughput-2023.09.03 vijnOOjITk67a7mAZzX2IA 1 1 42 0 391.1kb 391.1kb yellow open pscheduler_trace-2023.05.11 NwXrbs5fRBqhUbIgZsgvNw 1 1 1589 0 2.4mb 2.4mb ... yellow open pscheduler_trace-2023.09.03 VnBhB_bkTjmpL_oYuXhyBw 1 1 4171 0 6.5mb 6.5mb |
# CURL 'https://localhost:9200/pscheduler_throughput-2023.09.03/_search' -H "Content-Type: application/json" -d '{ "size": 3 }' { "took": 1, "timed_out": false, "_shards": { "total": 1, "successful": 1, "skipped": 0, "failed": 0 }, "hits": { "total": { "value": 139, "relation": "eq" }, "max_score": 1, "hits": [ { /*...*/ }, { /*...*/ }, { /*...*/ } ] } } |
SSLProxyEngine On ProxyPass /esmond/perfsonar/archive http://localhost:5000 status=+I ProxyPreserveHost On Header always set Access-Control-Allow-Origin "*" |
# netstat -anp | grep 5000 | grep LISTEN tcp 0 0 127.0.0.1:5000 0.0.0.0:* LISTEN 2159/python3 # cat /proc/2159/cmdline /usr/bin/python3 /usr/lib/perfsonar/elmond/app.py |
https://github.com/perfsonar/elmond
elmond/elmond/perfsonar-elmond/elmond/app.py
elmond/elmond/perfsonar-elmond/elmond/data.py
⭐ Only opensearch used
https://ps-daej.kreonet2.net/perfsonar-graphs/ ?source=134.75.207.2 &dest=138.44.228.7 &url=https://ps-daej.kreonet2.net/esmond/perfsonar/archive/ &timeframe=1d#start=1693273543&end=1693878343 A=https://ps-daej.kreonet2.net/esmond/perfsonar/archive/ B=b01012273dd3c9c66e8bbfc6b095dde515c57cbb11afa76a4015dca4bfee7da2 C=e632505ff9396efd34f63927cace884b5cb14cc4b5bf61d1b431c182a56fca0e curl 'A/?source=134.75.207.2&destination=138.44.228.7' curl 'A/B/failures/base/0 ?time-start=1693271687&time-end=1693876487' curl 'A/B/packet-count-sent/aggregations/86400 ?time-start=1693271687&time-end=1693876487' curl 'A/B/histogram-owdelay/statistics/86400 ?time-start=1693271687&time-end=1693876487' curl 'A/B/packet-loss-rate/aggregations/86400 ?time-start=1693271687&time-end=1693876487' curl 'A/B/packet-count-lost/aggregations/86400 ?time-start=1693271687&time-end=1693876487' curl 'A/C/throughput/base/0 ?time-start=1693271687&time-end=1693876487' |
# su postgres bash-4.2$ psql psql (10.17) postgres=# \l List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges ------------+------------+-----------+---------+-------+--------------------------- esmond | postgres | SQL_ASCII | C | C | =Tc/postgres + | | | | | postgres=CTc/postgres + | | | | | esmond=CTc/postgres pscheduler | pscheduler | SQL_ASCII | C | C | =Tc/pscheduler + | | | | | pscheduler=CTc/pscheduler postgres=# \c esmond You are now connected to database "esmond" as user "postgres". esmond=# \dt List of relations Schema | Name | Type | Owner --------+----------------------------+-------+-------- public | auth_group | table | esmond public | auth_group_permissions | table | esmond public | auth_permission | table | esmond public | auth_user | table | esmond public | auth_user_groups | table | esmond public | auth_user_user_permissions | table | esmond public | authtoken_token | table | esmond public | django_admin_log | table | esmond public | django_content_type | table | esmond public | django_migrations | table | esmond public | django_session | table | esmond public | ps_event_types | table | esmond public | ps_metadata | table | esmond public | ps_metadata_parameters | table | esmond public | ps_networkelement_subject | table | esmond public | ps_p2p_subject | table | esmond public | useripaddress | table | esmond (17 rows) |