From e5783bc1f201e2c201f80e0494f40cb1569af89e Mon Sep 17 00:00:00 2001 From: UO289432 Date: Tue, 30 Apr 2024 13:03:47 +0200 Subject: [PATCH 01/11] Cambios menores --- .github/workflows/build.yml | 3 ++- .../provisioning/dashboards/example-service-dashboard.json | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a15c313..04a197e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -4,8 +4,9 @@ on: branches: - master - develop + - newDevelop - LaraFMz - - Pablo-Arreglos + - Pablo-AjustesFinales - jota pull_request: types: [opened, synchronize, reopened] diff --git a/monitoring/grafana/provisioning/dashboards/example-service-dashboard.json b/monitoring/grafana/provisioning/dashboards/example-service-dashboard.json index 61da159..279d4df 100644 --- a/monitoring/grafana/provisioning/dashboards/example-service-dashboard.json +++ b/monitoring/grafana/provisioning/dashboards/example-service-dashboard.json @@ -372,4 +372,4 @@ "title": "Example Service Dashboard", "uid": "1DYaynomMk", "version": 2 -} +} \ No newline at end of file From bdb37d4f0668cbadd1a784543f7a68f6f678cd9b Mon Sep 17 00:00:00 2001 From: Fernando Jose Gonzalez Sierra <90760906+UO277938@users.noreply.github.com> Date: Tue, 30 Apr 2024 14:15:19 +0200 Subject: [PATCH 02/11] Create .env --- .env | 1 + 1 file changed, 1 insertion(+) create mode 100644 .env diff --git a/.env b/.env new file mode 100644 index 0000000..87843f2 --- /dev/null +++ b/.env @@ -0,0 +1 @@ +teamname="wiq_es05a" From eca042a5febc72242e7963ba45b6496a2bca9983 Mon Sep 17 00:00:00 2001 From: Lara Date: Tue, 30 Apr 2024 15:27:50 +0200 Subject: [PATCH 03/11] Quitando de estadisticas el tiempo medio --- webapp/src/components/Pages/Estadisticas.js | 6 ------ webapp/src/components/tests/Estadisticas.test.js | 2 -- 2 files changed, 8 deletions(-) diff --git a/webapp/src/components/Pages/Estadisticas.js b/webapp/src/components/Pages/Estadisticas.js index dcaa63f..cf46249 100644 --- a/webapp/src/components/Pages/Estadisticas.js +++ b/webapp/src/components/Pages/Estadisticas.js @@ -12,7 +12,6 @@ const Estadisticas = ({isLogged, username}) => { const [correctAnswers, setCorrectAnswers] = useState(0); const [incorrectAnswers, setIncorrectAnswers] = useState(0); const [completedGames, setCompletedGames] = useState(0); - const [averageTime, setAverageTime] = useState(0); const [firstRender, setFirstRender] = useState(false); useEffect(() => { @@ -30,7 +29,6 @@ const Estadisticas = ({isLogged, username}) => { setCorrectAnswers(datos.user.correctAnswers); setIncorrectAnswers(datos.user.incorrectAnswers); setCompletedGames(datos.user.completedGames); - setAverageTime(datos.user.averageTime); } catch (error) { setError('Error al cargar la información'); } @@ -54,10 +52,6 @@ const Estadisticas = ({isLogged, username}) => { Nº Juegos completados: {completedGames} - - Tiempo medio por juego: - {averageTime} - diff --git a/webapp/src/components/tests/Estadisticas.test.js b/webapp/src/components/tests/Estadisticas.test.js index bfd3def..60526ad 100644 --- a/webapp/src/components/tests/Estadisticas.test.js +++ b/webapp/src/components/tests/Estadisticas.test.js @@ -36,8 +36,6 @@ describe('Estadisticas Component', () => { expect(getByText('Nº Juegos completados:')).toBeInTheDocument(); expect(getByText('20')).toBeInTheDocument(); // Verifica que el número de juegos completados sea 20 - expect(getByText('Tiempo medio por juego:')).toBeInTheDocument(); - expect(getByText('30')).toBeInTheDocument(); // Verifica que el tiempo medio por juego sea 30 }); }); From ee05ddaf75850bff2bf559d97bfcce536b3dc889 Mon Sep 17 00:00:00 2001 From: UO289432 Date: Tue, 30 Apr 2024 15:50:19 +0200 Subject: [PATCH 04/11] Corregido rutas imagenes y nombre de equipo --- docker-compose.yml | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 2caeea1..60cae37 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,7 +1,7 @@ version: '3' services: mongodb: - container_name: mongodb-${teamname:-wiq5a} + container_name: mongodb-${teamname:-wiq_es5a} image: mongo profiles: ["dev", "prod"] volumes: @@ -12,8 +12,8 @@ services: - mynetwork questionservice: - container_name: questionservice-${teamname:-wiq5a} - image: ghcr.io/arquisoft/wiq_5a/questionservice:latest + container_name: questionservice-${teamname:-wiq_es5a} + image: ghcr.io/arquisoft/wiq_es5a/questionservice:latest profiles: ["dev", "prod"] build: ./questionservice ports: @@ -25,8 +25,8 @@ services: - mynetwork authservice: - container_name: authservice-${teamname:-wiq5a} - image: ghcr.io/arquisoft/wiq_5a/authservice:latest + container_name: authservice-${teamname:-wiq_es5a} + image: ghcr.io/arquisoft/wiq_es5a/authservice:latest profiles: ["dev", "prod"] build: ./userservice/authservice depends_on: @@ -39,8 +39,8 @@ services: MONGODB_URI: mongodb://mongodb:27017/userdb userservice: - container_name: userservice-${teamname:-wiq5a} - image: ghcr.io/arquisoft/wiq_5a/userservice:latest + container_name: userservice-${teamname:-wiq_es5a} + image: ghcr.io/arquisoft/wiq_es5a/userservice:latest profiles: ["dev", "prod"] build: ./userservice/userservice depends_on: @@ -53,8 +53,8 @@ services: MONGODB_URI: mongodb://mongodb:27017/userdb gatewayservice: - container_name: gatewayservice-${teamname:-wiq5a} - image: ghcr.io/arquisoft/wiq_5a/gatewayservice:latest + container_name: gatewayservice-${teamname:-wiq_es5a} + image: ghcr.io/arquisoft/wiq_es5a/gatewayservice:latest profiles: ["dev", "prod"] build: ./gatewayservice depends_on: @@ -72,8 +72,8 @@ services: QUESTION_SERVICE_URL: http://questionservice:8003 webapp: - container_name: webapp-${teamname:-wiq5a} - image: ghcr.io/arquisoft/wiq_5a/webapp:latest + container_name: webapp-${teamname:-wiq_es5a} + image: ghcr.io/arquisoft/wiq_es5a/webapp:latest profiles: ["dev", "prod"] build: ./webapp depends_on: @@ -82,8 +82,8 @@ services: - "3000:3000" prometheus: - image: ghcr.io/arquisoft/wiq_5a/prometheus:latest - container_name: prometheus-${teamname:-wiq5a} + image: ghcr.io/arquisoft/wiq_es5a/prometheus:latest + container_name: prometheus-${teamname:-wiq_es5a} build: ./monitoring/prometheus profiles: ["dev", "prod"] networks: @@ -97,8 +97,8 @@ services: grafana: - image: ghcr.io/arquisoft/wiq_5a/grafana:latest - container_name: grafana-${teamname:-wiq5a} + image: ghcr.io/arquisoft/wiq_es5a/grafana:latest + container_name: grafana-${teamname:-wiq_es5a} build: ./monitoring/grafana profiles: ["dev", "prod"] networks: From dfaffb4a92d5875198b97e2dbcddb431e0355946 Mon Sep 17 00:00:00 2001 From: UO289432 Date: Tue, 30 Apr 2024 16:02:32 +0200 Subject: [PATCH 05/11] Corregidas rutas relativas --- docker-compose.yml | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 60cae37..639493f 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,7 +1,7 @@ version: '3' services: mongodb: - container_name: mongodb-${teamname:-wiq_es5a} + container_name: mongodb-${teamname:-wiq_es05a} image: mongo profiles: ["dev", "prod"] volumes: @@ -12,8 +12,8 @@ services: - mynetwork questionservice: - container_name: questionservice-${teamname:-wiq_es5a} - image: ghcr.io/arquisoft/wiq_es5a/questionservice:latest + container_name: questionservice-${teamname:-wiq_es05a} + image: ghcr.io/arquisoft/wiq_es05a/questionservice:latest profiles: ["dev", "prod"] build: ./questionservice ports: @@ -25,8 +25,8 @@ services: - mynetwork authservice: - container_name: authservice-${teamname:-wiq_es5a} - image: ghcr.io/arquisoft/wiq_es5a/authservice:latest + container_name: authservice-${teamname:-wiq_es05a} + image: ghcr.io/arquisoft/wiq_es05a/authservice:latest profiles: ["dev", "prod"] build: ./userservice/authservice depends_on: @@ -39,8 +39,8 @@ services: MONGODB_URI: mongodb://mongodb:27017/userdb userservice: - container_name: userservice-${teamname:-wiq_es5a} - image: ghcr.io/arquisoft/wiq_es5a/userservice:latest + container_name: userservice-${teamname:-wiq_es05a} + image: ghcr.io/arquisoft/wiq_es05a/userservice:latest profiles: ["dev", "prod"] build: ./userservice/userservice depends_on: @@ -53,8 +53,8 @@ services: MONGODB_URI: mongodb://mongodb:27017/userdb gatewayservice: - container_name: gatewayservice-${teamname:-wiq_es5a} - image: ghcr.io/arquisoft/wiq_es5a/gatewayservice:latest + container_name: gatewayservice-${teamname:-wiq_es05a} + image: ghcr.io/arquisoft/wiq_es05a/gatewayservice:latest profiles: ["dev", "prod"] build: ./gatewayservice depends_on: @@ -72,8 +72,8 @@ services: QUESTION_SERVICE_URL: http://questionservice:8003 webapp: - container_name: webapp-${teamname:-wiq_es5a} - image: ghcr.io/arquisoft/wiq_es5a/webapp:latest + container_name: webapp-${teamname:-wiq_es05a} + image: ghcr.io/arquisoft/wiq_es05a/webapp:latest profiles: ["dev", "prod"] build: ./webapp depends_on: @@ -82,8 +82,8 @@ services: - "3000:3000" prometheus: - image: ghcr.io/arquisoft/wiq_es5a/prometheus:latest - container_name: prometheus-${teamname:-wiq_es5a} + image: ghcr.io/arquisoft/wiq_es05a/prometheus:latest + container_name: prometheus-${teamname:-wiq_es05a} build: ./monitoring/prometheus profiles: ["dev", "prod"] networks: @@ -97,8 +97,8 @@ services: grafana: - image: ghcr.io/arquisoft/wiq_es5a/grafana:latest - container_name: grafana-${teamname:-wiq_es5a} + image: ghcr.io/arquisoft/wiq_es05a/grafana:latest + container_name: grafana-${teamname:-wiq_es05a} build: ./monitoring/grafana profiles: ["dev", "prod"] networks: From 9358560b139a5079d8b038951fce7b0bcaa8409e Mon Sep 17 00:00:00 2001 From: UO289432 Date: Tue, 30 Apr 2024 16:59:44 +0200 Subject: [PATCH 06/11] =?UTF-8?q?Eliminado=20fichero=20de=20configuraci?= =?UTF-8?q?=C3=B3n=20de=20Grafana?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-compose.yml | 1 - monitoring/grafana/Dockerfile | 1 - monitoring/grafana/grafana.ini | 1654 -------------------------------- 3 files changed, 1656 deletions(-) delete mode 100644 monitoring/grafana/grafana.ini diff --git a/docker-compose.yml b/docker-compose.yml index 639493f..13cedc1 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -105,7 +105,6 @@ services: - mynetwork volumes: - grafana_data:/var/lib/grafana - - ./gatewayservice/monitoring/grafana/provisioning:/etc/grafana/provisioning environment: - GF_SERVER_HTTP_PORT=9091 - GF_SECURITY_ADMIN_USER=${GF_SECURITY_ADMIN_USER:-admin} diff --git a/monitoring/grafana/Dockerfile b/monitoring/grafana/Dockerfile index 30133be..c98c055 100644 --- a/monitoring/grafana/Dockerfile +++ b/monitoring/grafana/Dockerfile @@ -1,6 +1,5 @@ FROM grafana/grafana COPY provisioning/ /etc/grafana/provisioning/ -COPY grafana.ini /etc/grafana/grafana.ini CMD ["./bin/grafana"] \ No newline at end of file diff --git a/monitoring/grafana/grafana.ini b/monitoring/grafana/grafana.ini deleted file mode 100644 index 6c8ee47..0000000 --- a/monitoring/grafana/grafana.ini +++ /dev/null @@ -1,1654 +0,0 @@ -##################### Grafana Configuration Example ##################### -# -# Everything has defaults so you only need to uncomment things you want to -# change - -# possible values : production, development -;app_mode = production - -# instance name, defaults to HOSTNAME environment variable value or hostname if HOSTNAME var is empty -;instance_name = ${HOSTNAME} - -# force migration will run migrations that might cause dataloss -# Deprecated, use clean_upgrade option in [unified_alerting.upgrade] instead. -;force_migration = false - -#################################### Paths #################################### -[paths] -# Path to where grafana can store temp files, sessions, and the sqlite3 db (if that is used) -;data = /var/lib/grafana - -# Temporary files in `data` directory older than given duration will be removed -;temp_data_lifetime = 24h - -# Directory where grafana can store logs -;logs = /var/log/grafana - -# Directory where grafana will automatically scan and look for plugins -;plugins = /var/lib/grafana/plugins - -# folder that contains provisioning config files that grafana will apply on startup and while running. -;provisioning = conf/provisioning - -#################################### Server #################################### -[server] -# Protocol (http, https, h2, socket) -;protocol = http - -# This is the minimum TLS version allowed. By default, this value is empty. Accepted values are: TLS1.2, TLS1.3. If nothing is set TLS1.2 would be taken -;min_tls_version = "" - -# The ip address to bind to, empty will bind to all interfaces -;http_addr = - -# The http port to use -;http_port = 3000 - -# The public facing domain name used to access grafana from a browser -;domain = localhost - -# Redirect to correct domain if host header does not match domain -# Prevents DNS rebinding attacks -;enforce_domain = false - -# The full public facing url you use in browser, used for redirects and emails -# If you use reverse proxy and sub path specify full url (with sub path) -root_url = %(protocol)s://%(domain)s:%(http_port)s/grafana - -# Serve Grafana from subpath specified in `root_url` setting. By default it is set to `false` for compatibility reasons. -serve_from_sub_path = true -# Log web requests -;router_logging = false - -# the path relative working path -;static_root_path = public - -# enable gzip -;enable_gzip = false - -# https certs & key file -;cert_file = -;cert_key = - -# Unix socket gid -# Changing the gid of a file without privileges requires that the target group is in the group of the process and that the process is the file owner -# It is recommended to set the gid as http server user gid -# Not set when the value is -1 -;socket_gid = - -# Unix socket mode -;socket_mode = - -# Unix socket path -;socket = - -# CDN Url -;cdn_url = - -# Sets the maximum time using a duration format (5s/5m/5ms) before timing out read of an incoming request and closing idle connections. -# `0` means there is no timeout for reading the request. -;read_timeout = 0 - -# This setting enables you to specify additional headers that the server adds to HTTP(S) responses. -[server.custom_response_headers] -#exampleHeader1 = exampleValue1 -#exampleHeader2 = exampleValue2 - -#################################### GRPC Server ######################### -;[grpc_server] -;network = "tcp" -;address = "127.0.0.1:10000" -;use_tls = false -;cert_file = -;key_file = - -#################################### Database #################################### -[database] -# You can configure the database connection by specifying type, host, name, user and password -# as separate properties or as on string using the url properties. - -# Either "mysql", "postgres" or "sqlite3", it's your choice -;type = sqlite3 -;host = 127.0.0.1:3306 -;name = grafana -;user = root -# If the password contains # or ; you have to wrap it with triple quotes. Ex """#password;""" -;password = - -# Use either URL or the previous fields to configure the database -# Example: mysql://user:secret@host:port/database -;url = - -# For "postgres", use either "disable", "require" or "verify-full" -# For "mysql", use either "true", "false", or "skip-verify". -;ssl_mode = disable - -# For "postregs", use either "1" to enable or "0" to disable SNI -;ssl_sni = - -# Database drivers may support different transaction isolation levels. -# Currently, only "mysql" driver supports isolation levels. -# If the value is empty - driver's default isolation level is applied. -# For "mysql" use "READ-UNCOMMITTED", "READ-COMMITTED", "REPEATABLE-READ" or "SERIALIZABLE". -;isolation_level = - -;ca_cert_path = -;client_key_path = -;client_cert_path = -;server_cert_name = - -# For "sqlite3" only, path relative to data_path setting -;path = grafana.db - -# Max idle conn setting default is 2 -;max_idle_conn = 2 - -# Max conn setting default is 0 (mean not set) -;max_open_conn = - -# Connection Max Lifetime default is 14400 (means 14400 seconds or 4 hours) -;conn_max_lifetime = 14400 - -# Set to true to log the sql calls and execution times. -;log_queries = - -# For "sqlite3" only. cache mode setting used for connecting to the database. (private, shared) -;cache_mode = private - -# For "sqlite3" only. Enable/disable Write-Ahead Logging, https://sqlite.org/wal.html. Default is false. -;wal = false - -# For "mysql" only if migrationLocking feature toggle is set. How many seconds to wait before failing to lock the database for the migrations, default is 0. -;locking_attempt_timeout_sec = 0 - -# For "sqlite" only. How many times to retry query in case of database is locked failures. Default is 0 (disabled). -;query_retries = 0 - -# For "sqlite" only. How many times to retry transaction in case of database is locked failures. Default is 5. -;transaction_retries = 5 - -# Set to true to add metrics and tracing for database queries. -;instrument_queries = false - -################################### Data sources ######################### -[datasources] -# Upper limit of data sources that Grafana will return. This limit is a temporary configuration and it will be deprecated when pagination will be introduced on the list data sources API. -;datasource_limit = 5000 - -#################################### Cache server ############################# -[remote_cache] -# Either "redis", "memcached" or "database" default is "database" -;type = database - -# cache connectionstring options -# database: will use Grafana primary database. -# redis: config like redis server e.g. `addr=127.0.0.1:6379,pool_size=100,db=0,ssl=false`. Only addr is required. ssl may be 'true', 'false', or 'insecure'. -# memcache: 127.0.0.1:11211 -;connstr = - -# prefix prepended to all the keys in the remote cache -; prefix = - -# This enables encryption of values stored in the remote cache -;encryption = - -#################################### Data proxy ########################### -[dataproxy] - -# This enables data proxy logging, default is false -;logging = false - -# How long the data proxy waits to read the headers of the response before timing out, default is 30 seconds. -# This setting also applies to core backend HTTP data sources where query requests use an HTTP client with timeout set. -;timeout = 30 - -# How long the data proxy waits to establish a TCP connection before timing out, default is 10 seconds. -;dialTimeout = 10 - -# How many seconds the data proxy waits before sending a keepalive probe request. -;keep_alive_seconds = 30 - -# How many seconds the data proxy waits for a successful TLS Handshake before timing out. -;tls_handshake_timeout_seconds = 10 - -# How many seconds the data proxy will wait for a server's first response headers after -# fully writing the request headers if the request has an "Expect: 100-continue" -# header. A value of 0 will result in the body being sent immediately, without -# waiting for the server to approve. -;expect_continue_timeout_seconds = 1 - -# Optionally limits the total number of connections per host, including connections in the dialing, -# active, and idle states. On limit violation, dials will block. -# A value of zero (0) means no limit. -;max_conns_per_host = 0 - -# The maximum number of idle connections that Grafana will keep alive. -;max_idle_connections = 100 - -# How many seconds the data proxy keeps an idle connection open before timing out. -;idle_conn_timeout_seconds = 90 - -# If enabled and user is not anonymous, data proxy will add X-Grafana-User header with username into the request, default is false. -;send_user_header = false - -# Limit the amount of bytes that will be read/accepted from responses of outgoing HTTP requests. -;response_limit = 0 - -# Limits the number of rows that Grafana will process from SQL data sources. -;row_limit = 1000000 - -# Sets a custom value for the `User-Agent` header for outgoing data proxy requests. If empty, the default value is `Grafana/` (for example `Grafana/9.0.0`). -;user_agent = - -#################################### Analytics #################################### -[analytics] -# Server reporting, sends usage counters to stats.grafana.org every 24 hours. -# No ip addresses are being tracked, only simple counters to track -# running instances, dashboard and error counts. It is very helpful to us. -# Change this option to false to disable reporting. -;reporting_enabled = true - -# The name of the distributor of the Grafana instance. Ex hosted-grafana, grafana-labs -;reporting_distributor = grafana-labs - -# Set to false to disable all checks to https://grafana.com -# for new versions of grafana. The check is used -# in some UI views to notify that a grafana update exists. -# This option does not cause any auto updates, nor send any information -# only a GET request to https://grafana.com/api/grafana/versions/stable to get the latest version. -;check_for_updates = true - -# Set to false to disable all checks to https://grafana.com -# for new versions of plugins. The check is used -# in some UI views to notify that a plugin update exists. -# This option does not cause any auto updates, nor send any information -# only a GET request to https://grafana.com to get the latest versions. -;check_for_plugin_updates = true - -# Google Analytics universal tracking code, only enabled if you specify an id here -;google_analytics_ua_id = - -# Google Analytics 4 tracking code, only enabled if you specify an id here -;google_analytics_4_id = - -# When Google Analytics 4 Enhanced event measurement is enabled, we will try to avoid sending duplicate events and let Google Analytics 4 detect navigation changes, etc. -;google_analytics_4_send_manual_page_views = false - -# Google Tag Manager ID, only enabled if you specify an id here -;google_tag_manager_id = - -# Rudderstack write key, enabled only if rudderstack_data_plane_url is also set -;rudderstack_write_key = - -# Rudderstack data plane url, enabled only if rudderstack_write_key is also set -;rudderstack_data_plane_url = - -# Rudderstack SDK url, optional, only valid if rudderstack_write_key and rudderstack_data_plane_url is also set -;rudderstack_sdk_url = - -# Rudderstack Config url, optional, used by Rudderstack SDK to fetch source config -;rudderstack_config_url = - -# Rudderstack Integrations URL, optional. Only valid if you pass the SDK version 1.1 or higher -;rudderstack_integrations_url = - -# Intercom secret, optional, used to hash user_id before passing to Intercom via Rudderstack -;intercom_secret = - -# Controls if the UI contains any links to user feedback forms -;feedback_links_enabled = true - -#################################### Security #################################### -[security] -# disable creation of admin user on first start of grafana -;disable_initial_admin_creation = false - -# default admin user, created on startup -;admin_user = admin - -# default admin password, can be changed before first start of grafana, or in profile settings -;admin_password = admin - -# default admin email, created on startup -;admin_email = admin@localhost - -# used for signing -;secret_key = SW2YcwTIb9zpOOhoPsMm - -# current key provider used for envelope encryption, default to static value specified by secret_key -;encryption_provider = secretKey.v1 - -# list of configured key providers, space separated (Enterprise only): e.g., awskms.v1 azurekv.v1 -;available_encryption_providers = - -# disable gravatar profile images -;disable_gravatar = false - -# data source proxy whitelist (ip_or_domain:port separated by spaces) -;data_source_proxy_whitelist = - -# disable protection against brute force login attempts -;disable_brute_force_login_protection = false - -# set to true if you host Grafana behind HTTPS. default is false. -;cookie_secure = false - -# set cookie SameSite attribute. defaults to `lax`. can be set to "lax", "strict", "none" and "disabled" -;cookie_samesite = lax - -# set to true if you want to allow browsers to render Grafana in a ,