fix(core): update
This commit is contained in:
parent
ef9cb193d5
commit
9c87f5ee5e
@ -23,47 +23,30 @@ export class ElasticIndex {
|
||||
format: 'json',
|
||||
bytes: 'm'
|
||||
},
|
||||
async (err, response: any[]) => {
|
||||
// lets delete indexes that violate the retention
|
||||
const filteredIndices = response.filter(indexObjectArg => {
|
||||
return indexObjectArg.index.startsWith('smartlog');
|
||||
});
|
||||
const filteredIndexNames = filteredIndices.map(indexObjectArg => {
|
||||
return indexObjectArg.index;
|
||||
});
|
||||
const todayAsUnix: number = Date.now();
|
||||
const rententionPeriodAsUnix: number = plugins.smarttime.units.days(
|
||||
this.elasticSearchRef.indexRetention
|
||||
);
|
||||
console.log(filteredIndexNames);
|
||||
for (const indexName of filteredIndexNames) {
|
||||
const regexResult = /^smartlog-([0-9]*)\.([0-9]*)\.([0-9]*)$/.exec(indexName);
|
||||
const dateAsUnix: number = new Date(
|
||||
`${regexResult[1]}-${regexResult[2]}-${regexResult[3]}`
|
||||
).getTime();
|
||||
if (todayAsUnix - rententionPeriodAsUnix > dateAsUnix) {
|
||||
console.log(`found old index ${indexName}`);
|
||||
const done2 = plugins.smartpromise.defer();
|
||||
this.elasticSearchRef.client.indices.delete(
|
||||
{
|
||||
index: indexName
|
||||
},
|
||||
(err2, response2) => {
|
||||
if (err2) {
|
||||
console.log(err2);
|
||||
}
|
||||
console.log(`deleted ${indexName}`);
|
||||
done2.resolve();
|
||||
}
|
||||
);
|
||||
await done2.promise;
|
||||
}
|
||||
async (err, responseArg: any[]) => {
|
||||
if(err) {
|
||||
console.log(err);
|
||||
return;
|
||||
}
|
||||
|
||||
// console.log(response);
|
||||
const index = response.find(indexObject => {
|
||||
return indexObject.index === indexArg;
|
||||
});
|
||||
// lets delete indexes that violate the retention
|
||||
if(Array.isArray(responseArg)) {
|
||||
const filteredIndices = responseArg.filter(indexObjectArg => {
|
||||
return indexObjectArg.index.startsWith('smartlog');
|
||||
});
|
||||
const filteredIndexNames = filteredIndices.map(indexObjectArg => {
|
||||
return indexObjectArg.index;
|
||||
});
|
||||
this.deleteOldIndices(filteredIndexNames);
|
||||
}
|
||||
|
||||
let index = null;
|
||||
|
||||
if(Array.isArray(responseArg)) {
|
||||
index = responseArg.find(indexObject => {
|
||||
return indexObject.index === indexArg;
|
||||
});
|
||||
}
|
||||
|
||||
if (!index) {
|
||||
const done2 = plugins.smartpromise.defer();
|
||||
@ -85,4 +68,38 @@ export class ElasticIndex {
|
||||
);
|
||||
await done.promise;
|
||||
}
|
||||
|
||||
public createNewIndex(indexNameArg: string) {
|
||||
|
||||
}
|
||||
|
||||
public async deleteOldIndices(indicesArray: string[]) {
|
||||
const todayAsUnix: number = Date.now();
|
||||
const rententionPeriodAsUnix: number = plugins.smarttime.units.days(
|
||||
this.elasticSearchRef.indexRetention
|
||||
);
|
||||
for (const indexName of indicesArray) {
|
||||
const regexResult = /^smartlog-([0-9]*)\.([0-9]*)\.([0-9]*)$/.exec(indexName);
|
||||
const dateAsUnix: number = new Date(
|
||||
`${regexResult[1]}-${regexResult[2]}-${regexResult[3]}`
|
||||
).getTime();
|
||||
if (todayAsUnix - rententionPeriodAsUnix > dateAsUnix) {
|
||||
console.log(`found old index ${indexName}`);
|
||||
const done2 = plugins.smartpromise.defer();
|
||||
this.elasticSearchRef.client.indices.delete(
|
||||
{
|
||||
index: indexName
|
||||
},
|
||||
(err2, response2) => {
|
||||
if (err2) {
|
||||
console.log(err2);
|
||||
}
|
||||
console.log(`deleted ${indexName}`);
|
||||
done2.resolve();
|
||||
}
|
||||
);
|
||||
await done2.promise;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user