Resum: Aquest article explica com validar l'existència de registres en un clúster OpenSearch a partir d'un fitxer CSV, realitzant comprovacions de salut del clúster, registrant resultats en un fitxer de log amb marca temporal i exportant un CSV de resultats per a auditoria i informe.
Què fa el script: Llegeix parells recordId i recordDate des d'un CSV, realitza una comprovació prèvia ràpida a l'endpoint _cluster/health, consulta OpenSearch per verificar l'existència exacta per recordId.keyword i rang de data per a tot el dia, genera un log amb timestamp i produeix un CSV amb l'estat PASS o FAIL per a cada fila.
Estructura recomanada de carpetes: carpeta principal opensearch-checks, fitxer .env amb configuració, carpeta inputs contenint records.csv, carpetes logs i outputs creades automàticament, i el script check_records.py.
Exemple d'inputs records.csv: primera línia capçaleres recordId,recordDate; línies següents registres amb format UUID i data en format AAAA-MM-DD com 2025-07-31.
Variables obligatòries a .env: OPENSEARCH_URL amb la URL del clúster, OPENSEARCH_USER, OPENSEARCH_PASS, INDEX_PATTERN apuntant a pattern_de_indice/_search, INPUT_CSV amb la ruta al CSV d'entrades, LOG_DIR i OUTPUT_DIR amb rutes per a logs i resultats. El script carrega estrictament des de .env sense valors per defecte al codi.
Client mínim d'OpenSearch: el script inclou un client lleuger que utilitza urllib per evitar dependències HTTP externes. Suporta autenticació bàsica i per defecte en exemples de desenvolupament desactiva la verificació SSL per facilitar proves internes. En producció s'ha d'activar la verificació i utilitzar certificats de confiança.
Comprovació de salut: el script executa una consulta GET a _cluster/health i accepta estats green i yellow. Si l'estat és red o no es pot contactar amb el clúster, el procés falla ràpidament evitant consultes innecessàries.
Consulta d'existència: per a cada parell recordId i recordDate es fa una consulta bool amb must de term sobre recordId.keyword i range sobre recordDate amb gte recordDate 00:00:00.000 i lte recordDate 23:59:59.999. S'avalua si hits.total.value és més gran que zero per determinar l'existència.
Sortida i registre: es creen logs i un CSV de resultats amb noms que inclouen timestamp en format AAAA-MM-DD_HH-MM-SS. El CSV de resultats conté les columnes recordId, recordDate i status on status pot ser PASS o FAIL. El log registra una entrada per fila processada indicant PASS o FAIL.
Com executar: instal·lar dependència per llegir .env amb pip install python-dotenv i després executar python check_records.py des de la carpeta del projecte, assegurant-se que .env i inputs/records.csv siguin presents.
Notes de seguretat: en entorns de producció activar verificació SSL, utilitzar certificats emesos per una CA de confiança i limitar credencials. Considerar l'ús de rols i mecanismes d'autenticació més robustos segons l'arquitectura.
Casos d'ús típics: auditories, pipelines ETL, tasques de conciliació, verificacions posteriors a ingestió massiva i processos de monitoratge que requereixen confirmar presència de registres per identificador i data.
Bones pràctiques: validar capçaleres del CSV abans de processar, ometre files amb valors faltants, utilitzar paginació o size ajustat si s'estén la lògica a recuperació de documents, i centralitzar logs per a la seva posterior anàlisi.
Sobre Q2BSTUDIO: Q2BSTUDIO és una empresa de desenvolupament de programari i aplicacions a mida especialitzada en solucions d'intel·ligència artificial, ciberseguretat i serveis cloud AWS i Azure. Oferim programari a mida i serveis d'intel·ligència de negoci, incloent implementacions de Power BI, agents IA i solucions d'IA per a empreses que milloren processos i permeten decisions basades en dades.
Per què triar-nos: comptem amb experiència en aplicacions a mida i programari a mida, expertesa en intel·ligència artificial i projectes d'agents IA, i pràctiques de ciberseguretat integrades en el cicle de desenvolupament. A més brindem serveis cloud AWS i Azure i solucions d'intel·ligència de negoci per integrar Power BI i anàlisi avançat.
Paraules clau estratègiques: aplicacions a mida, programari a mida, intel·ligència artificial, ciberseguretat, serveis cloud aws i azure, serveis intel·ligència de negoci, IA per a empreses, agents IA, power bi.
Contacte i serveis: si necessiteu adaptar aquest script al vostre entorn, integrar validacions en pipelines CI CD, o desplegar solucions completes d'anàlisi i seguretat, Q2BSTUDIO pot ajudar amb consultoria, desenvolupament i operacions gestionades.
Resum final: amb un enfocament senzill i segur es pot validar l'existència de registres a OpenSearch des d'un CSV, obtenir traçabilitat mitjançant logs i resultats CSV, i garantir operativitat mitjançant una comprovació prèvia de la salut del clúster. Per a ampliacions i suport professional sol·liciteu a Q2BSTUDIO serveis de desenvolupament personalitzat, integració d'intel·ligència artificial i estratègies de ciberseguretat.




